window.open打开子页面后,在子页面触发父页面绑定的事件, trigger方法触发不了
有一个父页面a.html,给a页面的某个div元素绑定一个自定义事件,例如
$("#d1").bind("myEvent",function(){
alert("sssss");
});
在父页面使用trigger方法触发该事件都是正常的。
问题来了......
1、现在我用a页面的window.open方法打开了一个子页面,在子页面中找到父页面的那个div元素,并使用trigger方法触发上面绑定的自定义事件,但是始终触发不了。$("#"+window.opener.document.getElementById("d1")).trigger("myEvent");
2、奇怪的是将上面事件只有换为click事件,在子页面中结果是可以触发的,其他js事件和自定义事件都触发不了。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
window.opener.$("#d1")
1)子页面和父页面是2个不同的context
2)$("#"+window.opener.document.getElementById("d1"))能查到DOM元素吗?
3)用原生的fireEvent/dispatchEvent方法试试手工触发事件
我刚刚也遇到了这个问题,不知道为什么,很苦恼