Javascript 如果不在fb iframe中,则js重定向
我想将所有访问我服务器上Facebook应用程序选项卡的流量直接重定向到我的Facebook应用程序。因此,我使用以下代码检查用户是否在Facebook iframe内或我的网页上:Javascript 如果不在fb iframe中,则js重定向,javascript,facebook,redirect,Javascript,Facebook,Redirect,我想将所有访问我服务器上Facebook应用程序选项卡的流量直接重定向到我的Facebook应用程序。因此,我使用以下代码检查用户是否在Facebook iframe内或我的网页上: <!-- language: lang-js --> function referrerIsFacebookApp() { if(document.referrer) { return document.referrer.indexOf("facebook.com") !== -
<!-- language: lang-js -->
function referrerIsFacebookApp() {
if(document.referrer) {
return document.referrer.indexOf("facebook.com") !== -1;
}
return false;
}
if (!referrerIsFacebookApp()) {
top.location.replace("https://www.facebook.com/bommelME/app_264697733636385");
};
函数refererRisfaceBookApp(){
if(文件参考人){
返回document.referer.indexOf(“facebook.com”)!=-1;
}
返回false;
}
如果(!refererIsFaceBookApp()){
顶部。位置。替换(“https://www.facebook.com/bommelME/app_264697733636385");
};
如果我用浏览器打开页面,一切正常。但是如果我链接到这个页面并打开链接,重定向就不起作用了。有什么提示吗?我认为你应该检查
窗口。父对象而不是文档。引用者,因为正如你所说,该页面可以从另一个页面引用,但不能通过iframe包含使用window.top来检测你的应用程序是否在iframe中。试试这个
if (window!=window.top) {
/* I'm in a frame! */
window.location = "https://www.facebook.com/bommelME/app_264697733636385";
}
干杯。这取决于您的referrerIsFacebookApp
函数中的内容。我刚刚编辑了代码。贴错了;)