嗯,我得到了最基本的问题。我想在div中选择iframe。无论何时点击此iframe,我都想删除iframe。我怎么能这样做?
<div id="box">
Random thoughts
<iframe src=""></iframe>
</div>
答案 0 :(得分:4)
正如@Daedalus评论的那样,你无法直接处理iframe内部的点击。
你需要在#box
div中添加一个额外的div,它将覆盖iframe,它将处理iframe上方的点击。
您需要找到iframe的尺寸及其偏移量,并将其应用于此div中。
<强> HTML 强>
<div id="box">Random thoughts
<iframe src="//www.facebook.com/plugins/likebox.php?href=http%3A%2F%2Fwww.facebook.com%2FFacebookDevelopers&width&height=62&colorscheme=light&show_faces=false&header=false&stream=false&show_border=true&appId=163663917164005" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:62px;" allowTransparency="true"></iframe>
<div id="inner_box">
</div>
</div>
<强> CSS 强>
#inner_box {
position:absolute;
z-index:2;
}
#iframe {
position:absolute;
z-index:1;
}
JavaScript (在链接here的帮助下)
//Positioning the #inner_box in the same position with the iframe
var destination = jQuery('#box iframe').offset();
jQuery('#inner_box').css({top: destination.top, left: destination.left});
//Giving the #inner_box the same dimensions with the iframe
jQuery('#inner_box').width(jQuery('#box iframe').width());
jQuery('#inner_box').height(jQuery('#box iframe').height());
//Implement click handler
jQuery('#inner_box').click(function() {
jQuery(this).closest('#box').find('iframe').remove();
});
Here是代码的小提琴。
答案 1 :(得分:0)