使用JQuery访问新窗口的DOM

我正在创建一个新窗口,其中包含用户将要打印的文本。 我想做类似的事情:

var new_win = window.open(); $(new_win.document).html("Test"); 

在这种情况下,您正在尝试访问没有jQuery增强function的dom。 您需要先将jquery.js加载到此文档中。 如果完成,语法将是。

 var popup = window.open('/some/url.html'); popup.document.$('body').html('test'); 

但要非常小心,在多文档管理和通信中,许多不同的浏览器版本和供应商之间存在许多错误和不便。

如果你将通信保持在绝对最小值,并且只是将另一个完整的html文件加载到弹出窗口中,那真的会更好。

要打开弹出窗口并修改其内容,您可以使用此代码

 var popup = window.open('/' + window.URL_PREFIX + 'print/', '_blank'); popup.onload = function() { $(popup.document.body).html('hello'); };