Using JQuery to Access a New Window's DOM

2019-01-15 12:43发布

问题:

I am creating a new window that will contain text that user will print. I would like to do something similar to this:

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

回答1:

In this case you are trying to access a dom wich has no jQuery enhancement. You need to first load a jquery.js into this document. If done the syntax would be.

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

But be very careful, in multi document management and communication are many bugs and inconveniences between the many different browser versions and vendors.

It would really be better if you keep communication to a absolute minimum, and just load another complete html file into the popup.



回答2:

To open popup window and modify it's content you can use this code

var popup = window.open('/' + window.URL_PREFIX + 'print/', '_blank');

popup.onload = function() {
    $(popup.document.body).html('hello');
};