例如父窗口定义了一个事件.
- 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');
来源: http://www.bubuko.com/infodetail-2887819.html