我有一个页面,上面有两个框架,并且我已成功响应其中一个框架的重新加载。在重新加载的处理程序中,我尝试使用 jQuery 在新加载的框架上选择一个项目,如下所示:
$("frame[name=WorkArea]").on("load", function () {
console.log("Reloaded work area."); //this works fine
alert($("tr.hdr", "frame[name=WorkArea]").html());
});
警告框显示“未定义”。当我在控制台尝试“选择所有内容”时,
$("*", "frame[Name=WorkArea]")
仅列出一项:框架的原始 html。
所以基本上我无法选择框架内的任何内容。看起来 DOM 还没有为框架的 HTML 内容构建(?)我错过了什么?
PS 不确定这是否相关,但它位于 Chrome 扩展程序的注入(inject)内容脚本中。
最佳答案
试试这个,
$("frame[name=WorkArea]").on("load", function () {
console.log("Reloaded work area."); //this works fine
alert($(this).contents().find('tr.hdr').html()); // use this and find() here
});
关于javascript - JQuery 的 $ ("*",文档)仅返回一项 : html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23402317/