Использование JQuery для доступа к DOM нового окна - PullRequest
14 голосов
/ 17 октября 2011

Я создаю новое окно, которое будет содержать текст, который пользователь напечатает. Я хотел бы сделать что-то похожее на это:

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

Ответы [ 2 ]

10 голосов
/ 17 октября 2011

В этом случае вы пытаетесь получить доступ к домену, у которого нет улучшения jQuery.Вам нужно сначала загрузить jquery.js в этот документ.Если бы это было сделано, синтаксис был бы следующим:

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

Но будьте очень осторожны, в управлении несколькими документами и при общении возникает много ошибок и неудобств между многими различными версиями браузера и поставщиками.

Это действительнобудет лучше, если вы сохраните связь до абсолютного минимума и просто загрузите еще один полный HTML-файл во всплывающее окно.

0 голосов
/ 09 мая 2015

Чтобы открыть всплывающее окно и изменить его содержимое, вы можете использовать этот код

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

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