Swapping out JQuery with Fiddler

This morning, someone asked me to look into a site-compatibility problem on a HTML5 demo site. When loading the site into IE9 and IE10, the F12 Developer Tools’ Script Debugger showed the following error: Now, obviously, IE does support getElementsByTagName, and I confirmed that the page is running in IE9 and IE10 Standards Modes in…


The Perils of User-Agent Sniffing, 2011 Edition

I continue to be amazed at how often site-compatibility issues turn out to have a root cause related to User-Agent sniffing. For instance, earlier this year, someone wrote into the comments section on one of my posts noting that the HTML5 canvas art site WeaveSilk.com wasn’t working in IE9. After reading through thousands of lines…


Update now available for improved font-smoothing

Today’s batch of Windows Updates included a “Recommended” update to improve the rendering of certain fonts at small sizes (8-10pt). The updated versions of Arial, Verdana, and Tahoma fonts include new hinting logic that renders more clearly using sub-pixel-positioned ClearType text rendered using the DirectWrite APIs used by Internet Explorer 9’s hardware-accelerated text rendering. I put…


Understanding Once-Per-Session Cache Validation

Last year, I wrote about the IE9 improvements in heuristic expiration, which apply when a server fails to specify how long a cached resource should be treated as fresh. Heuristic Expiration works by calculating an implicit freshness lifetime from the Last-Modified timestamp on the cached resource and the timestamp at which the resource was downloaded from…


First IE9 Update Now Available

As announced over on the IEBlog, the first update for IE9 is now available. When this update is installed, the IE Help > About screen will indicate that the IE version is 9.0.1. Please note that this is a display only change and it is not reflected in the User-Agent String, Conditional Comments, or the…


Browser Helper Objects for Windows Explorer

Thanks to TuxExplorer for reminding me to blog about this. Both Windows Explorer and Internet Explorer are able to load extensions known as Browser Helper Objects (BHOs). BHOs are a minimal extensibility point into both the shell and the browser, allowing extensions to sync to events and react accordingly. For instance, the Mouse Gestures add-on…


IE9 Standards Mode Accepts only text/css for stylesheets

I recently encountered a blog that isn’t looking right in IE9: The site renders just fine in other browsers, and when the page is put into Compatibility View by ticking the icon in the address bar: What’s going on here?  It’s clear that a stylesheet isn’t being applied, but why not? While IE9’s F12 Developer…


IE9 Final RTW Minor Changes List

This is the third and last post in the Minor Changes series; it covers changes in the final Release-to-Web (RTW) version of Internet Explorer 9. IE9 Beta Minor Changes List IE9 Release Candidate (RC) Minor Changes List The Release Candidate was Platform Complete, meaning that the Internet Explorer team worked hard to avoid making any…


Content-Length in the Real World

Earlier in IE9, we tried to change the WinINET networking component to reject as incomplete any HTTP responses for which the Content-Length header specified more bytes than the server actually sent back. It turns out that some sites and applications expect to be able to specify an incorrect Content-Length without the client raising a fuss….


IE9 – XBAPs Disabled in the Internet Zone

As I mentioned last month, .NET Framework XAML Browser Applications (XBAPs) are now prevented from loading from the Internet Zone in IE9. When visiting an Internet site that utilizes an XBAP, an error message is shown, indicating that the application type has been disabled: XBAPs are a powerful technology based on .NET Framework technologies, but…