Facebook javascript FB.ui请求在IE11和Firefox上挂起
Facebook javascript FB.ui request hangs on IE11 and Firefox
我正在尝试使用facebook UI请求对话框来选择朋友。这在safari和Chrome中工作得很好,但在firefox和IE11(尚未测试低版本)中,它会持续挂起加载动画。
function pickFriend(ev)
{
FB.ui(
{
method: "apprequests",
message: "Choose a friend.",
max_recipients: 1,
title:"Invite a friend"
},sendMessage);
ev.preventDefault();
}
$("#element").click(pickFriend);
然后我尝试直接在控制台中调用该函数,以确保问题不是我的实现,并且我得到了与加载动画相同的结果。然后我尝试了不同的显示选项,我可以让它在弹出模式下工作,但对我来说这不是很优雅,我更喜欢它在iframe模式下工作,就像它在safari和chrome中一样。
还有其他人遇到过这个问题吗?如果是这样,这是有原因的,有解决办法吗?
我认为这可能是完全取决于facebook的东西来修复,这将留下没有其他选择,但在弹出模式运行,如果我想保持浏览器的兼容性
在IE11(和node)中,javascript引擎可能会在长时间的操作中挂起。推荐的解决方法是使用"setimate",因此对于您的示例:
function pickFriend(ev)
{
ev.preventDefault();
setImmediate(FB.ui
, {
method: "apprequests",
message: "Choose a friend.",
max_recipients: 1,
title:"Invite a friend"
}
, sendMessage
);
}
$("#element").click(pickFriend);
另外,确保你的"sendMessage"变量的作用域是正确的,而不是未定义的或空的。
语法
var immediateID = setImmediate(func, [param1, param2, ...]);
var immediateID = setImmediate(func);
参考:https://developer.mozilla.org/en-US/docs/Web/API/Window.setImmediate
相关文章:
- JavaScript执行暂时挂起页面
- 是定义的操作系统睡眠/挂起期间setTimeout的行为
- Chrome浏览器“;挂起”;同时在循环中执行AJAX请求
- fullcalendar在删除导致浏览器挂起的多个事件时速度较慢
- 应用将图表转换为图像的jqplot代码时Chrome挂起
- 如何在不使用Internet Explorer的情况下从未挂起的HTML文件执行程序
- MongoDB collection.find()查询挂起
- 使用子字符串方法时应用程序挂起的原因
- 如何在AngularJS中取消挂起的请求
- 从node.js应用程序调用Mongoose Model.save()时挂起
- Chrome,Safari在从本地存储读取时挂起,而Firefox很好
- IE 10 挂起 XMLHttpRequest 6 分钟,然后响应请求(使用 AngularJS 实现 CRSF)
- writeln img src将数据提交到外部系统-Firefox和IE挂起
- onbeforeunload 循环并挂起 Firefox
- Firefox在重for循环期间挂起
- Firefox 在 Docker 中打开 Karma Server URL 后挂起
- 不能调试挂起$.Post在firefox扩展
- Firefox 在无限循环中挂起,并忽略 window.print() 上的 css
- 在Chrome / Safari下载文件期间$ajax调用挂起,而不是在IE / Firefox中
- Facebook javascript FB.ui请求在IE11和Firefox上挂起