javascript - 是否可以在打开的 javascript 窗口中访问 DOM?

标签 javascript

使用 javascript,我可以打开和关闭弹出窗口,如下所示。

var myWindow = window.open('http://example.org/');
// do things to window.
myWindow.close();

如何在关闭弹出窗口之前操作该页面的 DOM 元素?我试过了

myWindow.onready = function() {
    myWindow.document.getElementById('someElementID').style.color = '#f00';
}

没用。

最佳答案

没有事件让您知道 URL 已正确加载到弹出窗口中。唯一可行的选择是设置超时,然后访问元素。

像这样:

var myWindow = window.open('./t6.html');  

setTimeout(check, 3000);

console.log($('body', myWindow.document)); // This shows a blank "body"

function check() {
    console.log($('body', myWindow.document)); // This shows the actual elements in the document
}

myWindow.close();

关于javascript - 是否可以在打开的 javascript 窗口中访问 DOM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14208037/

相关文章:

javascript - 仅当长度超过指定字符数时才添加省略号

javascript - Jquery 中的延迟操作

javascript - 在 Node.js 中获取客户端主机名

javascript - jQuery:如何绑定(bind)同一类的多个元素?

javascript - requireJS 中的上下文和嵌套模块

javascript - 在登录时显示自定义错误消息

javascript - 选择默认箭头不会在 FF 上隐藏

javascript - iPhone 之类的 Javascript/jQuery 重新排序/随机播放小部件

javascript - 如何循环并删除数组为空的对象

javascript - axios GET 数据在 div 中显示为 [未定义, 未定义]