我在我的主网页中有一个iframe,我向其发送不同的html页面。我想创建一个事件,在此期间,在iframe内(在第二个网页内)单击会触发主网页上的事件( iframe位于其中)。
因此,我的问题是:是否可以在jQuery中使用选择器来引用不同网页中的id?我试着用
$("second_webpage.html#div1").click(function() {
$("#image").css("display", "");
});
但没有成功。
在jQuery中引用外部页面中的元素是可能的吗?有没有其他方法可以做到这一点?
提前感谢!
发布于 2018-05-28 18:56:12
你需要确定两件事。在执行Jquery之前,iFrame需要在同一个域上,并且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
https://stackoverflow.com/questions/50564457
复制相似问题