我应该使用什么而不是document.write作为弹出窗口

时间:2012-11-30 14:06:11

标签: javascript html document.write

在我的网页中,我打开一个弹出窗口,并使用JavaScript / jQuery为弹出窗口生成HTML:

var site="<html> ............. </html>";
var popupWindow = window.open("","","menubar=0,scrollbars=0");
popupWindow.document.write(site);

问题是,弹出窗口在状态栏中显示“正在读取”。我应该使用什么而不是document.write()?

编辑:

document.close();

应该做的工作,谢谢。不幸的是,我的框架可能会干扰,所以它在FF中不适用于我。 IE工作。

3 个答案:

答案 0 :(得分:4)

完成写作后,您必须关闭文档:

var site="<html> ............. </html>";
var popupWindow = window.open("","","menubar=0,scrollbars=0");
popupWindow.document.write(site);
popupWindow.document.close();

答案 1 :(得分:0)

popupWindow.document.close();

将此添加到最后将解决问题。 我之前在这里找到了它:http://p2p.wrox.com/javascript-how/36703-javascript-popup-keeps-loading.html

答案 2 :(得分:0)

你应该使用jQuery的append()

var win = window.open();
    var popup = win.document.body;
    $(popup).append('site html');

innerHTML

var popup = window.open();
popup.document.body.innerHTML = 'site data here';