当点击类似facebook的按钮时,Javascript窗口会触发lur
Javascript window onblur firing when clicking facebook like button
我有一个弹出窗口,显示一些内容和一个类似facebook的按钮。弹出窗口在window.onblur上关闭。不过,当我点击facebook按钮时,它会将其视为模糊事件,并在不喜欢的情况下关闭弹出窗口。我该怎么办?
这是我的脸书按钮代码按照脸书的指示(也有元数据在标题):
<div id="fb-root"></div>
<script>
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "http://connect.facebook.net/en_US/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
}
(document, 'script', 'facebook-jssdk'));
</script>
<div class="fb-like" data-href="http://www.google.com" data-send="false" data-width="450" data-show-faces="true" data-font="arial"></div>
和我最初的诱惑:
<script>
setTimeout(setOnBlur,500);
function setOnBlur(){window.onblur = closeWin;}
function closeWin(e){window.close();}
</script>
要么我做错了什么,点击facebookdiv标签会触发一个模糊事件,要么我怎么才能做到这一点?
Facebook like
按钮通常被包装到iframe中。聚焦另一个iframe会使当前窗口模糊。AFAIR,有一种方法可以包含类似Facebook的按钮,而不是iframe。但我不记得是怎么做到的。
为了忽略某些iframe丢失的焦点(不确定,这将起作用)
window.onblur = function(e) {
var t = e.target;
if ((t.window == t) // this is a window
&& (t != window)) // but some other window
return true;
closeWin();
}
U需要检查一下-event.stopPropogation()
事件冒泡发生,您需要处理它。
相关文章:
- 关闭黑莓浏览器窗口 JavaScript
- 关闭窗口 Javascript
- 清除窗口Javascript幻灯片
- 弹出窗口JavaScript的站点地图生成器
- 根据弹出窗口javascript的返回值更改asp.net面板的可见性
- 将var添加到新窗口Javascript中
- 如何在引导模式弹出窗口(javascript,jquery)上运行函数
- 仅包含某些数组值的单个弹出窗口.JavaScript
- 将值传递给弹出窗口 [JavaScript]
- 在链接后控制父窗口(JavaScript)
- 将数据发送到单独的窗口javascript
- 正在访问窗口.Javascript 中的应用程序函数
- 将变量从父窗口Javascript函数传递到弹出窗口分区
- 在内容进入打印机之前关闭窗口(JavaScript)
- 窗口.JavaScript中的innerWidth
- 是否可以从子窗口关闭父窗口(Javascript)
- 窗口.javascript中的Innerheight减去数字
- 如果我重写窗口.javascript中的onerror应该返回true还是false
- 计数值后关闭窗口javascript
- 如何在缩略图图像的翻转上显示弹出窗口?Javascript、CSS