如何使用javascript在子窗口中添加脚本文件?
请考虑以下代码:
myWindow = window.open("", "", 'width=650,height=700,menubar=yes,resizable=yes,scrollbars=yes');
myWindow.focus();
myWindow.document.write('<script src="'+App.data.assets_url+'\/javascript\/jquery.js"><\/script>');
以上代码在IE中无法正常运行。它显示空白(子)窗口,但在chrome中它可以正常工作。它显示了子窗口的所有内容。
由于以上myWindow.document.write
行浏览器的打印选项,在Mozilla中它也无法正常工作。
答案 0 :(得分:4)
基本上:
var win, doc;
win = window.open('', 'dialog', opts);
doc = win.document;
doc.write(
"<html><head>"
+ "<script type='text/javascript' src='path/to/your/script.js'></script>"
+ "<script type='text/javascript'>"
+ "/* this is inline script inserted by JavaScript, below is a function converted to it's string representation */"
+ someFuncInVariable.toString()
+ "</script>"
+ "</head><body>"
+ "</body></html>"
);
doc.close();
答案 1 :(得分:2)
假设您没有跨域,您可以这样做(使用jquery):
$(childwindow.document.body).append('<script src="..."></script>');
但更详细的问题可能会使主题答案更多。