【发布时间】:2011-11-01 17:41:55
【问题描述】:
有没有办法从我的 Facebook 画布页面重定向到我的外部网站?我看过以下形式的博客和stackoverflow答案:
<script>
window.top.location = 'http://www.yoursite.com/';
</script>
很遗憾,这些解决方案永远不会奏效。我也尝试过 top.location.href、window.location 和 location.href.. 没有任何效果。 Facebook 是否通过解析此类代码消除了从 javascript 重定向的可能性?有没有办法仍然重定向?
更新:网页的行为就像从来没有 javascript 重定向指令一样。事实上,当我通过 firebug 查看源代码时,我没有看到任何 javascript 重定向。
更新 2:当我尝试 window.top.location = 'http://www.yoursite.com/'; 和上述其他变体时,我的画布页面出现以下 javascript 错误。 Facebook 似乎不允许访问 window、top 或 location 全局 javascript 变量:
Uncaught ReferenceError: a217374027657_location is not defined
Uncaught ReferenceError: a217374027657_window is not defined
Uncaught ReferenceError: a217374027657_top is not defined
有趣的是,document.location = 'http://www.yoursite.com/'; 的工作原理是没有例外……但网页当然不会被重定向。
更新 3:想通了! Javascript 重定向仅适用于 iframe 画布。我必须在高级屏幕中更改我的设置以使用 iframe 而不是 FBML。
【问题讨论】:
-
当你说它不起作用时,会发生什么?
-
什么也没发生。画布网页没有被重定向,它只是坐在那里。
-
@at:感谢您的更新。现在我明白出了什么问题。
标签: javascript facebook redirect facebook-javascript-sdk