Wednesday, March 5th, 2008

IE 8: Better Ajax, CSS, DOM, and new features

Category: Browsers, IE

>IE 8 Readiness

MIX has started, and we have the news we have been waiting for, for some time. What is IE 8 going to do?

Microsoft has put out an IE 8 Readiness Report that discusses everything.

There is a TON of amazing stuff here. It also looks like they will be using the standards for most of this stuff, but we need to see more. E.g. is cross domain messaging using postMessage?

But, having 6 connections per host and the like is huge:

Ajax Improvements

A white paper is here:

  1. AJAX Navigation enables users to navigate back
    and forth without leaving the AJAX application and could be used
    navigating a page without performing a traditional full navigation.
    This allows websites to trigger an update to browser components like
    the address bar by setting the window.location.hash value, firing an
    event to alert components in the page and even creating an entry in
    the travel log.
  2. DOM Storage is a simple-to-use method for
    storing and retrieving strings of key/value pair data. Data can be
    stored per tab instance for a session or persisted to the local
    machine. This allows pages to cache text on the machine which
    reduces the effect of network latencies by providing faster access
    to pre-cached data. Several innovative uses are possible. For
    example, use this in combination with the new network connectivity
    event to allow a page to cache data if it detects that the computer
    is offline.
  3. Connectivity events allow websites to check
    when the user is connected to the network and receive notification
    of connectivity changes.
  4. Six connections per host instead of two for
    broadband scenarios and a scriptable property allow for more
    improved performance by allowing parallelization of downloads in
    Internet Explorer 8. In addition, this increases functionality by
    ensuring a request is not blocked to a host if two connections
    already exist. Websites can optimize their downloads based on a
    scriptable property.
  5. XMLHTTPRequest Enhancements include a timeout
    property that can be set to cancel the request if necessary,
    allowing developers to manage the request better.

Cross domain is here:

  • With Cross-domain Request (XDR), developers can
    create cross-site data aggregation scenarios. Similar to the
    XMLHttpRequest object but with a simpler programming model, this
    request, called XDomainRequest, is the easiest way to make anonymous
    requests to third-party sites that support XDR and opt in to making
    their data available across domains. Three lines of code will have
    you making basic cross-site requests. This will ensure data
    aggregation for public sites (such as blogs) will be simple, secure
    and fast.
  • Cross-document Messaging (XDM) APIs allow
    communication between documents from different domains through
    IFrames in a way that is easy, secure and standardized.

HTML and CSS

New Features

  • Activities are contextual menu options which quickly access a service from any Web page. Users typically copy and paste from one Web page to another. Internet Explorer 8 Activities make this common pattern easier to do.
  • WebSlices is a new feature for websites to connect to their users by subscribing to content directly within a webpage. WebSlices behave just like feeds where clients can subscribe to get updates and notify the user of changes.

And we also have other features such as less memory leaks!

What do you think?

Related Content:

Posted by Dion Almaer at 9:31 am
40 Comments

++++-
4.4 rating from 61 votes

40 Comments »

Comments feed TrackBack URI

I hope they keep their promises.

Comment by sekostar — March 5, 2008

Ok, this all sounds good and all that, but when can I get my hands on IE8 Beta and try these things out myself? :)

Comment by DiscoNova — March 5, 2008

Hope better DOM core support means things like the w3c event model

Comment by Pete B — March 5, 2008

Some really cool stuff in there… some so cool that I might even want to use ie8 but unless they make a mac version (yeah right) I won’t be leaving Safari any time soon. I long for the day where I can curse the other browsers for not implementing a cool feature that I want to code into my sites. I’m tired of cursing IE. Pretty much any time IE comes out of my mouth, a dollar goes into the profanity jar.

Comment by JonBad — March 5, 2008

Competition is good, makes stuff better. BTW, is the beta available? Are these links off this page supposed to work? http://www.microsoft.com/windows/products/winfamily/ie/ie8/readiness/Install.htm

Comment by mcsnolte — March 5, 2008

Great news! cant wait to see IE 8 in action! Sounds like a total makeover from crappy IE7

Comment by ajaxus — March 5, 2008

Yeah, what’s with all those non-working beta and whitepaper links? Are they releasing a beta?

Comment by K9 — March 5, 2008

no fair – what’s the point of linking to pages which are not public?

Comment by kae — March 5, 2008

I thought hell froze over when they reversed their decision on the rendering issue this week – but wow.

It looks like Microsoft may actually be pushing the envelope again.

Comment by remy — March 5, 2008

I thought that the links would go live this morning at the keynote, so I thought I would put them in now so they work as soon as it goes live :)

Comment by Dion Almaer — March 5, 2008

E4X?

Comment by Chris Phillips — March 5, 2008

Wow, IE8 is looking like a pretty rockin’ browser. I especially love Activities and the new Ajax/DOM/Selector updates. Something that has me curious though is the “Improved Namespace Support” section where it mentions SVG as a feature. I wish the whitepaper were publicly available to see if they really are implementing SVG or if it requires a plugin like what is mentioned later in the paragraph.

Comment by Andy Kant — March 5, 2008

I see the addition of some features at the expense of shoring up standards support. Some of these are needed for those of us who do hard core AJAX but the vast majority of the web will see no benefit. I am concerned about this DOM Storage thing, which sounds like a potential rift with HTML5 storage, Google Gears, and Air persistence. Why are we hearing about CSS 2.1 support and Acid 2 from IE when everybody else is talking CSS 3 and Acid 3. I find it somewhat disgusting that people sound excited about the IE team conceding defeat on past battles and openly plotting new ones. Frankly I’ve been being abused by these guys for almost 10 years. I don’t trust them, not even kind of.

Comment by vance Dubberly — March 5, 2008

There is a beta!
http://www.microsoft.com/downloads/details.aspx?FamilyId=1A2E3DDD-B38B-439D-BBA7-F179A5D3ECAF&displaylang=en

Comment by K9 — March 5, 2008

really great news. No use about JS engine?

Comment by kadnan — March 5, 2008

Looks like they fixed a previous issue with rendering PNGs using alpha opacity + CSS opacity combined. (Testcase)

Comment by Scott Schiller — March 5, 2008

The links here work now:
http://www.microsoft.com/windows/products/winfamily/ie/ie8/readiness/Install.htm
Installing IE8 as we speak, let us pray this is the beginning of the end of hating IE (even though I will still probably use Firefox as my browser).

Comment by tj111 — March 5, 2008

This is great, I can’t wait to get my hands on the beta. I just hope everyone else can keep up. Connectivity Events and DOM Storage, v. cool.

Comment by kim3er — March 5, 2008

It does indeed use postMessage.

Cross Document Messaging (XDM) provides a postMessage method off of the window object

Comment by kim3er — March 5, 2008

Tried it on a valid web page, correctly seen (or almost) by other recent navigators, but it just behave like crap with “position:fixed”.
This seems to be another specific CSS, like the 7
* CRY *

Comment by temsa — March 5, 2008

If you wanna test and don’t believe me, or want to explain me why, here’s my test page : http://archetypejs.org/slidy-fosdem/Slidy.html

Comment by temsa — March 5, 2008

Connectivity Events are for Vista only.

Comment by kim3er — March 5, 2008

Ok, just found with Web Developer tools([SHIFT]+[F12]), that it just has used quirks mode (don’t know why) to render the page.

Works WAY better in standard mode :)

But it’s not perfect :/

Just have to find out why it uses quirks mode (there is no other header than just … may be that)

Comment by temsa — March 5, 2008

I love hot hotmail breaks under IE8 :)

Comment by Dougal85 — March 5, 2008

When I do the ACID2 test… it works but only if the window is in fullscreen. It breaks slightly if i have a smaller window… is this right? Not even that small… I guess if i make it about 700px wide or less.

Comment by Dougal85 — March 5, 2008

Google Maps is knackered as well.

Comment by kim3er — March 5, 2008

I think they’re getting ready for their new “Software as a service” approach.

They’re gonna offer a browser that does more than the others in ways that are not regulated by any standards and will offer stuff like Word online… which will only work on IE8.

I predict this is how they will fight the browser war.

Comment by JeromeLapointe — March 5, 2008

You can quote me :)

Comment by JeromeLapointe — March 5, 2008

@Jérôme: which is probably why more and more Microsoft applications (including the new Office Live) work cross-browser. Oh wait…

Comment by Bertrand Le Roy — March 5, 2008

Acid3 test:
- 11/100 without MSXML
- 17/100 with MSXML “addon activation” (strange security check)

Looks really weird, and this is the worst result of a navigator I’ve seen.

It may not be in “Standard mode” but I can’t popup the Developer tools on this page to check or force it ( ??? )

Comment by temsa — March 5, 2008

For some reason, i can’t even get it to install…

Comment by antimatter15 — March 5, 2008

“Your Operating System is not supported”.

I have Windows Server 2003 and it won’t even install. HAH! I hate IE

Comment by Dave — March 5, 2008

Oops I posted the XP-specific link above. This is the full list of downloads:
http://www.microsoft.com/windows/products/winfamily/ie/ie8/readiness/Install.htm

Comment by K9 — March 5, 2008

As predicted, the web got broken with the default IE8 mode. What worries me is that in order for the browser to be usable people will just switch to IE7 compatibility mode and forget switching back, hence we are going back to IE7 rendering again even for users that upgraded to IE8. Just look at the initial reaction of non developers. BTW The SunSpider javascript benchmark with IE8 gave score of 10900 while FF 2.0.0.12 gave me 24300 on the same machine. Pretty good performance, yet not better than the new FF3, Opera and Safary. Also pretty good surprise was the Inclusion in IE8 of a Dev tool resembling firebug. That is good. IE8 shapes up a solid start, yet I think Microsoft might revert to the initial of plan of making IE7 mode be the default as of now the web is broken in IE8 mode.

Comment by vale — March 6, 2008

So, we are back at adding proprietary extensions now? Really great.

Comment by fuzzy76 — March 6, 2008

I don’t see anything wrong with proprietary extentions. That’s how we got Ajax.

Comment by kim3er — March 6, 2008

@kim3er
You’re right… I have nothing against browser trying to innovate… and maybe this tag is an innovation… but the concept of freezing a website in time is detrimental to innovation in itself…

Comment by JeromeLapointe — March 6, 2008

@JeromeLapointe: I quite agree, but not everything is about innovation, sometimes it has to be about good business practice first.

I endeavour to use a standards based approach whenever I work on a new project. At some point though, I will have to break the site to allow consistent look, feel and functionality across all main browsers at the time of release. There is something appealing (to me at least) about the idea that I can add a tag to a site that says “I work for these browsers and these browser versions”. With the site tagged, I can rest assured that my site will work with every subsequent version of IE.

It is then down to me as a developer to make sure I revisit the site often to keep the site fresh and innovative. It is also up to the user to make sure they are using the latest products. Working this way (I think) the Internet can progress more rapidly with less of the pain attributed to a new browser release. There is also scope to see the new meta tag as a means of graceful degradation, which is a concept that is synonymous with the web standards approach. I hope Mozilla, Opera & Webkit see fit to push for a standard in this area.

Comment by kim3er — March 6, 2008

Serious, first thing I did was point it at our newest development which is valid strict html and it complete broken the website. After reading through the developer documents I see nothing that should prevent it from rendering properly. My current solution (because I know ie8 will be crammed down our throat in the next 12 months) is the X-UA-Compatible meta tag, because there is no way I am going to spend a week debugged ANOTHER version of IE right now.

Comment by diilbert — March 8, 2008

Just got my app (just a mash-up of other people’s widgets, really) working in Chrome and Firefox.

Tested it in IE8.

Windows hung. Browser crashed.

There’s this nice novel “debugging window” that looks like something from 1998 VBA, and has a lot of buttons that don’t seem to do much.

Right now it’s silently killing all the jQuery AJAX requests, and not throwing any warnings or errors. Even lightbox is broken.

This is how Microsoft deserve their legions of haters. It’s even more depressing that I expected it to behave like that.

Comment by alexanderhowell — September 10, 2008

Leave a comment

You must be logged in to post a comment.