JavaScript:onclick使用iframe删除div

时间:2013-01-12 01:47:06

标签: javascript facebook html iframe facebook-like

您好,我点击其中的Facebook按钮后尝试删除div但是无法执行此操作 这是我的代码

<div onclick="this.parentNode.parentNode.removeChild(this.parentNode);">
<iframe id='theiframe' scrolling='no' frameBorder='0' allowTransparency='true'            src='http://www.facebook.com/widgets/like.php?href="www.facebook.com/makestream"&amp;layout=standard&amp;show_faces=true&amp;width=53&amp;action=like&amp;colorscheme=light&amp;height=80' style='width:53px;height:23px;overflow:hidden;border:0;opacity:"0.8";filter:alpha(opacity="0.8");'></iframe>
</div>

有没有办法在点击facebook like按钮后删除div或ifreme?

3 个答案:

答案 0 :(得分:2)

您无法捕获iframe区域中的click事件,因为它由iframe本身处理,并且不会冒泡到DIV父级。关于SO的这个问题可能对您有所帮助:capture click on div surrounding an iframe

我可以想象一个解决方法:使用Facebook的SDK并在类似按钮的操作上注册一个监听器(请参阅此facebook doc)。本文"How to execute JavaScript when the Facebook Like button is clicked"给出了一些示例。

答案 1 :(得分:0)

我不确定您的JavaScript。

试试这个:

<div onclick="this.parentNode.removeChild(this);">
<!-- iframe -->
</div>

<强>更新

我认为这是不可能的。

FB Like按钮上的点击事件不会传播出iframe。

以下是一个例子:http://jsfiddle.net/kboucher/pdvdH/

答案 2 :(得分:0)

当有人点击“赞”按钮时,Facebook会提供回调功能: https://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/

FB.Event.subscribe('edge.create',
    function(response) {
        alert('You liked the URL: ' + response);
    }
);