IE8 Crashes Strangely on JavaScript Popup
Posted
by dkris
on Stack Overflow
See other posts from Stack Overflow
or by dkris
Published on 2010-05-31T13:53:24Z
Indexed on
2010/06/01
8:03 UTC
Read the original article
Hit count: 439
Hi,
I am facing a strange issue after the popup is created onclick
. The popup opens up but hangs immediately on IE8 (works fine on all the other browsers including IE6). But on adding the alert
box as show in the JavaScript code, the popup works fine.
I am using
**https**
and not**http**
and i feel popup is not able to load the JS file because ofSSL
.
Here is the how i am generating the onclick
event:
<a id="forgotPasswordLink" href="#" onclick="openSupportPage();"> Some Text </a>
The onclick
function is defined this way:
function openSupportPage() {
var features = "width=700,height=400,status=yes,toolbar=no,menubar=no,location=no,scrollbars=yes";
var winId = window.open('', '', features);
winId.focus();
winId.document.open();
winId.document.write('<html><head><title>' + document.title + '</title><link rel="stylesheet" href="./css/default.css" type="text/css">\n');
var is_ie6 = (
window.external && typeof window.XMLHttpRequest == "undefined");
alert(is_ie6);/*The JS include below*/
/*works in popup only with this alert box.*/
/*else IE8 Hangs*/
winId.document.write('<script src="../js/tiny_mce/tiny_mce.js" type="text/javascript">Script_IE8</script>\n');
winId.document.write('<script type="text/javascript">\n');
winId.document.write('function inittextarea() {\n');
winId.document.write('tinyMCE.init({ \n');
winId.document.write('elements : "content",\n');
winId.document.write('theme : "advanced",\n');
winId.document.write('readonly : true,\n');
winId.document.write('mode : "exact",\n');
winId.document.write('theme : "advanced",\n');
winId.document.write('readonly : true,\n');
winId.document.write('setup : function(ed) {\n');
winId.document.write('ed.onInit.add(function() {\n');
winId.document.write('tinyMCE.activeEditor.execCommand("mceToggleVisualAid");\n');
winId.document.write('});\n');
winId.document.write('}\n');
winId.document.write('});}</script>\n');
winId.document.write('</head><body onload="inittextarea()">\n');
winId.document.write(' \n');
var hiddenFrameHTML = document.getElementById("HiddenFrame").innerHTML;
hiddenFrameHTML = hiddenFrameHTML.replace(/&/gi, "&");
hiddenFrameHTML = hiddenFrameHTML.replace(/</gi, "<");
hiddenFrameHTML = hiddenFrameHTML.replace(/>/gi, ">");
winId.document.write(hiddenFrameHTML);
winId.document.write('<textarea id="content" rows="10" style="width:100%">\n');
winId.document.write(document.getElementById(top.document.forms[0].id + ":supportStuff").innerHTML);
winId.document.write('</textArea>\n');
var hiddenFrameHTML2 = document.getElementById("HiddenFrame2").innerHTML;
hiddenFrameHTML2 = hiddenFrameHTML2.replace(/&/gi, "&");
hiddenFrameHTML2 = hiddenFrameHTML2.replace(/</gi, "<");
hiddenFrameHTML2 = hiddenFrameHTML2.replace(/>/gi, ">");
winId.document.write(hiddenFrameHTML2);
winId.document.write('</body></html>\n');
winId.document.close();
}
Please help me on this one. I could provide more information on this if needed.
I have referred to these posts already:
- http://stackoverflow.com/questions/776639/problem-of-import-js-file-in-https-page-in-ie8
- http://stackoverflow.com/questions/2597289/force-browser-modeie8-and-document-modeie8-standards
Additional Information:
© Stack Overflow or respective owner