3

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 では正しく動作しません。空白の(子)ウィンドウが表示されますが、クロムでは正常に動作します。子ウィンドウのすべてのコンテンツを表示します。

Mozilla では、上記myWindow.document.writeのブラウザの印刷オプションが原因で、正しく動作しません。

4

2 に答える 2

5

基本的に:

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();
于 2012-06-08T10:13:13.897 に答える
2

ドメイン クロッシングがないと仮定すると、(jquery を使用して) 単純にこれを行うことができます。

$(childwindow.document.body).append('<script src="..."></script>');

しかし、より詳細な質問により、より多くのトピックの回答が可能になる場合があります。

于 2012-06-08T10:06:33.430 に答える