Hey all, we're having some issues with the prototype library over here at MySpace. We have OpenSocial apps that live on our profile/home pages in an iframe that are built by third parties. Those apps are allowed to use prototype.js. An IE bug is causing browsers to crash when prototype is loaded into those iframes. When the browser window is closed before the iframe's DOM has finished loading the browser goes into an infinite loop launching new browser windows/tabs until all memory is exhausted.
Here's a test page, first is my outer page (outer.html): <html> <head></head> <body><iframe src="inner.html#test"></iframe></body> </html> And this is inner.html: <html> <head></head> <body> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/ libs/prototype/1.6.0.3/prototype.js"></script> <!--script type="text/javascript">var a = document.createTextNode ('');</script--> </body> </html> If you open up outer.html in IIS (doesn't seem to work locally for some reason, maybe the DOM loads too quickly) and immediately close it the browser blows up. You may need to try it a couple times to get it to fire off. It also happens when the commented line is switched in inner.html, the cause is the document.createTextNode call found here: Object.extend(String.prototype.escapeHTML, { div: document.createElement('div'), text: document.createTextNode('') }); This was introduced in 1.5.1. The real cause seems to be calling div.innerHTML before the DOM has loaded, as I tried to rewrite createTextNode using innerHTML and found the same issue. So, can you guys revert back to the 1.5.0 version of escapeHTML that doesn't create the text node on DOM load? Right now we're looking at banning prototype, which we'd obviously rather not have to do. Thanks and let me know if you need more info! --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Prototype: Core" group. To post to this group, send email to prototype-core@googlegroups.com To unsubscribe from this group, send email to prototype-core-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/prototype-core?hl=en -~----------~----~----~----~------~----~------~--~---