例如父窗口定义了一个事件。
top:
$(dom1).bind(\'topEvent\', function(){});
那么iframe里面的元素怎样触发父窗口dom1的事件呢?这样吗?
$(dom1, parent.document).trigger(\'topEvent\');
看似正确,实则误导人。
因为父窗口的jquery对象与iframe里面的jquery对象实际为两个对象(function),iframe里面的jquery并不会触发另一个jquery对象定义的事件。除非你在iframe这样定义了:
iframe:
self.$ = parent.$;
所以解决的方法很简单:
parent.$(dom1,parent.doucment).trigger(\'topEvent\');
调用父jquery执行该事件就行了。
话说iframe应该不必再引进jquery文件的,与父窗口共用一个jquery就行了,这样很环保。
本文地址:https://www.stayed.cn/item/8904
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我