我的主网页上有一个iframe,我发送了不同的html页面。我想创建一个事件,在此期间,iframe内的点击(在第二个网页内)会触发主网页上的事件(iframe所在的位置)。
因此我的问题:是否可以在jQuery中使用引用不同网页中的id的选择器?我尝试使用
$("second_webpage.html#div1").click(function() {
$("#image").css("display", "");
});
但没有成功。
甚至可以在jQuery中引用外部页面中的元素?还有其他方法吗?
提前致谢!
答案 0 :(得分:0)
你需要确定两件事。 iFrame需要在同一个域上,并且在执行Jquery之前需要完全加载iFrame。
如果两者都适用,则可以使用contents()方法。
$("#secondWebPageIFrame").contents().find("#div1").click(function() { ...
编辑:
要确保加载iFrame,您可以使用iFrame Load事件(在此示例中使用内联javascript):
function onMyFrameLoad() {
alert('iFrame is loaded');
};
<iframe id="secondWebPageIFrame" src="..." onload="onMyFrameLoad(this)"></iframe>
有关获取iFrame状态的来源和其他方式,请参阅此处: Capture iframe load complete event