2012-07-17 45 views
2

我想删除一个iframe,只要点击任何东西。我把这个代码:每当点击某个东西时,用jquery删除一个iframe

$('*').on('click',function(){ 
       $('iframe').remove(); 

    }); 

但是,我的问题是iframe追逐鼠标。所以基本上,我每次都点击iframe,因为iframe没有得到一个点击事件,那个脚本不会工作。

我正在寻找任何可以捕获点击事件的替代解决方案。并且将启用iframe的消失。一个Web应用程序可以识别左键点击鼠标,即使它不必在某物上。

这可以解决我的问题..但是我发现网上没有解决方案,不管我有多少看!

+0

就像概念一样。获取iframe的位置和高度/宽度。用iframe的'position:absolute; height/width'创建div并检查iframe区域中的点击。点击添加事件'body' – nk9 2012-07-17 09:37:16

+1

iframe中的click事件没有办法被委托,或者冒泡到包含iframe的文档主体。如果您可以设法以某种方式点击文档,那么它很容易。如果你的鼠标点击总是被iframe接收,我相信没有办法。我希望有人证明我错了。 – 2012-07-17 09:40:40

+0

问题是,没有办法把div放在iframe之上,但是你可以把iframe放在div – 2012-07-17 09:48:49

回答

0

如果您尝试关闭任意点击的iframe,那么用一个不可见的div覆盖iframe应该可以实现您的目标。

退房这样的jsfiddle:http://jsfiddle.net/6g4KQ/

除了做这个,有没有访问iframe内点击的方式 - 除非你可以访问iframe的内容,我猜你不知道。

相关问题