IE7 To Support XMLHTTP Requests
Ruliz Galaxor writes "IEBlog posts that Internet Explorer 7 will support a native XMLHTTPRequest object as many other browsers currently do. This will mean no more ActiveX MSXML objects to implement AJAX functionality. It looks like Microsoft is seriously trying to make the lives of us web developers easier. Of course you'll still need to use the Microsoft.XMLHTTP ActiveX object if you want to support IE6 and older."
Can someone tell me if this means that I no longer have to take my business elsewhere when I encounter a "Sorry, this site only loads in Windows?"
I dig that stuff that requires the DRM WMP still may not let me in, but what about other things?
Can I hope that Safari and friends will no longer be a second class citizen on Exchange WebMail, for example?
--
$tar -xvf
I think it's great what the IE developers are doing. There are, of course, a few features I'd love to see integrated into the latest version, but I'm extremely happy with what they're doing otherwise.
When the IE blog began I was angered that they didn't seem to be worried about the numerous CSS flaws, among other bugs. They seemed like they were just trying to beef up security. As time marched on, though, the developers seemed to be taking notice to what most of the replies were about. The IE developers listened and really went the extra mile where the concerns of web developers everywhere are concerned.
While there are a few things I'd love to see (like the ability to properly deliver XHTML), I'm happy (for now) with the changes they're implementing. It sounds like they're really committed to helping web developers from having to design their website three or more times before they get a version that's decent looking in all browsers.
Let's give the guys some credit where credit is due... who knows, maybe the rest of Micro$oft will take the hint.
Impoved support for several of those is also scheduled for IE7. (We'll have to see how much improved when it is actually out, of course, but the reports at the moment are promising.)
Microsoft has proven it can make a good web browser. When they are backed into a corner.
'Sensible' is a curse word.
... embrace and extend.
It's good that MS is supporting web standards, but I doubt the reason is to play nice and make the lives of web developers easier. IMHO, MS realized that they have lost a lot of ground, credibility and following in the browser market. Any new "innovations" coming from MS will NOT be adopted very easily these days unless Firefox, Safari and Opera endorse it. So, before it can repeat what it did to Netscape, MS needs to re-capture its lost browser market share. The easiest way to do that is to come up with a really great browser that supports all the current web technologies, and that is easier to code for than other browsers. Classic 'embrace'. Once it has done that, and it has all the time and money in the world for it to do that, only then can it can start phase 2, the 'extend' phase where it renders all other browsers obsolete.
The only way to combat MS on this front is to keep innovating, staying a step in front of it. Netscape made the mistake of not updating their browser soon enough, and they paid dearly. I hope Opera, Firefox and Safari have learned that lesson.
I was wondering about this very thing just last week. It's definitely a step in the right direction. Now if only MS would care enough to create a browser that behaves and renders more closely to the already superior browsers like Firefox and Safari. Web designers would no longer have to go through the anguish of browser detection for things as simple as page layouts. There's nothing like spending 2+ hours trying to get a single page template to render the same in IE and Safari/Firefox using only CSS. Next on my list: Could Apple please provide better DOM & XPath support in its Safari Javascript engine?
Well, this will be a nice change if IE7 is going to play nice.
For work, I guess I will still have to plan workarounds for IE6. However, I generally only support such browsers officially as long as they receive actual support from their publishers. So, as soon as MS drops support for IE6, so will I (unless I'm ordered to keep it up).
Personally, I code to whatever standard I've chosen for the day. If I decided to code to CSS 2.1 and I can see it properly in my browser, well, then I'm happy. Because it's my personal stuff. And if IE7 supports something and IE6 doesn't, well too bad. And same goes for Firefox, Safari, Konqueror, and Opera (although it'll be rare that Opera causes me problems, except when a version has tried to pretend it was IE, but that was work anyway).
Mostly now, since I've grown into being some lazy business analyst with a messy house under renovation, I just blog anyway.
Linux - because it doesn't leave that Steve Ballmer aftertaste.
I'm the web architect of gather.com and we use an invisible iframe as a pipe for our AJAX stuff instead of XMLHttpRequest. This works in a uniform way across all browsers we've tested it on with - even way old ones. The Javascript is 1.0-level stuff and IFRAME is standard since HTML 4. I wonder why more people don't use this approach? I know people hate IFRAMEs, but the ones we use are invisible and 0x0 pixels, so they're little more than an offscreen paint buffer (like BitBlt! :) )
The general approach we're taking is described in this years-old posting on Apple Developer Connection. Anyone else have experience with this approach?
Fortunately you can check by capabilities instead of sniffing UA strings, and lump IE7 in with other AJAX-capable browsers:
if (native XMLHTTPREquest) {
do native stuff
}
else if (ActiveX XMLHTTPRequest) {
do ActiveX stuff
}
else {
non-AJAX fallback
}
In a few years it'll be practical to drop the middle section, assuming XMLHTTPRequest hasn't been replaced by something more useful.
I work on solution designs for a fairly large ISV, anything that increases browser compatibility is a good thing all around. Most of our end-user interfaces and make use of XML with some XSLT on the client, we also use XMLHTTPRequests..
Due to pure market pressure from our existing userbase we develop for the IE platform. IE isn't for everyone and ideally we'd like to target every browser from a technical standpoint and we know it increases the number of potential customers we have. We move one step closer to genuine cross browser compatibility with this.
Despite this we still need ActiveX right now for a couple of key things:
- File uploading, we used Java already and it went badly. Our customers had real problems with getting correct JRE versions out to their users, the users complained about the lack of standardisation in basic things like the Common Dialog. We've had a lot less problems with ActiveX controls but understandably network admins really don't like it.
- MS Office Automation. Part of our product is business reporting, it has features around automated generation of Powerpoint Presentations and Excel Spreadsheets from the web interface. We can't influence our customers decisions around Office systems but we've never encountered pushback over MS Office from anybody. MS Office automation needs ActiveX and is way outside sandbox (local processes are launched and these have access to all kinds of things).
In short, this helps but we are still a way off from being able to deliver fully functional web-based business systems with this but it helps. As an enthusiast I like it, as a real world solution developer it doesn't quite make a dent.
Definitely agree that all my listed issues can be worked around, but I wouldn't go as far as to say it's trivial to do so. Here are the current workarounds I use in IE for these problems:
Just curious if you happen to know of better/simpler workarounds for any of the above? (Please note, this is not a rhetorical question/argumentative response, I'm genuinely curious if you've come across something better, as I'd be extremely happy to find better solutions for any of the above!)
And I do agree on the signifance of not supporting the proper W3C events, at this point I'm simply resolved that event capturing is only a figment of my imagination.
Sorry to burst your bubble, but MS invented the whole idea of the XMLHTTPRequest object. They already crossed this finish line 7 years ago.