IE7 says "Operation aborted" when loading my page containing a YouTube video or other Flash content. Why?

Options

Content authors sometimes add a YouTube video or other Flash movie to a page and then discover the page won't load in Internet Explorer 7. IE7 will display an alert saying "Internet Explorer cannot open the Internet site . Operation aborted."

Internet Explorer 7 has a feature that cancels loading of a web page if a script in the page performs a certain type of operation. Microsoft has a knowledge base article describing the behavior and saying it can be resolved by upgrading to Internet Explorer 8. Since you can't force every IE7 user to upgrade before visiting your site, you probably want to change the page instead.

The issue is triggered by the combination of some JavaScript and the embedded Flash element in your page. You can address the issue either by removing the problematic script or by using a different method to embed the Flash element.

To isolate which script is the problem, make a copy of the page with all <script> elements removed. After confirming the page loads and the Flash movie plays correctly, add the script blocks back in one at a time and test again after each. When the symptom returns, the last script you added back into the page is probably your culprit.

In one example when the issue occurred, the issue was isolated to a Scriptaculous JS file used in a lightbox package. As a short-term solution, the site managers made a copy of the wrapper without the script in its head, and used that wrapper for all pages containing YouTube videos. Naturally, that meant they couldn't use the lightbox package on those pages. The longer-term solution was to find a newer version of the script that didn't trigger the issue, or to replace it with a different script offering similar functionality.

The second solution that has resolved several instances of the issue is to use a current version of SWFObject to embed your Flash movie. As its website says, "SWFObject is an easy-to-use and standards-friendly method to embed Flash content, which utilizes one small JavaScript file." Replacing <object> embed code (such as provided by YouTube) with a call to swfobject may be a good solution. Please note older versions of swfobject may not do the trick -- getting the latest version (2.2 at the time of this post) from the site linked above is recommended.

Tagged:

Categories