如何让iFrame接受dblclick事件?
问题描述:
我检查了w3school,它显示ondbclick事件是“除base,bdo,br,frame,frameset,head,html,iframe,meta,param,脚本,样式和标题之外的所有元素都有效。 ...如何让iFrame接受dblclick事件?
但我真的想做一些事情,当iframe是dbclick,我该怎么做?谢谢。
W3School参考: http://www.w3schools.com/TAGS/ref_eventattributes.asp
答
观察iframe的加载事件,一旦它被触发,您可以将ondblclick分配给iframe中的文档。
<iframe src="some.htm"
onload="this.contentWindow.document.ondblclick=function(){alert('it work\'s');}">
</iframe>
注:这将通过同源政策限制,如果iframe中的文件是在另一个(子)域比父窗口。
答
这可能是使用CSS招:提上了iframe的顶空div和赶上div元素的双击事件。下面是所需的代码:
<div style="position: relative;">
<div style="position: absolute; left: 0px; top: 0px; width: 500px; height: 300px; z-index: 100;">
<iframe src="myotherpage.html" width="500" height="300"></iframe>
</div>
<div style="position: absolute; left: 0px; top: 0px; width: 500px; height: 300px; z-index: 999;" ondblclick="alert('frame double clicked');"></div>
</div>
的“心脏”,这是同时设置的z-index的,具有更大的价值,当然具有他们两个相同大小的DIV。
使用jQuery,它应该非常简单(尽管不是微不足道的),通过在页面加载中添加额外的div并实时应用所需的CSS来使其成为“通用”。