2011-08-23 70 views
8

有沒有辦法從我的Facebook畫布頁面重定向到我的外部網站?我已經看到博客和計算器的窗體回答:從Facebook的畫布頁面重定向到網站

<script> 
window.top.location = 'http://www.yoursite.com/'; 
</script> 

不幸的是,這些類型的解決方案從來沒有工作。我已經嘗試了top.location.href,window.location和location.href以及..沒有任何工作。通過解析出這種代碼,Facebook是否刪除了從JavaScript重定向的可能性?有沒有辦法仍然重定向?

UPDATE:什麼情況是網頁的作用就像從來就沒有一個JavaScript重定向指令。實際上,當我通過螢火蟲查看源代碼時,我看不到任何JavaScript重定向。

更新2:我收到以下JavaScript錯誤形成我的畫布頁面,當我嘗試window.top.location = 'http://www.yoursite.com/';及以上的其他變化。看來Facebook並沒有允許訪問的窗口,頂部或位置的全局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/';作品中,有沒有例外...但當然,網頁不重定向。

UPDATE 3:想通了! Javascript重定向僅適用於iframe畫布。我不得不在高級屏幕中更改我的設置,以使用iframe而不是FBML。

+0

當你說這是行不通的,這是什麼情況? – shanethehat

+0

什麼都沒有發生。畫布網頁不會重定向,它只是坐在那裏。 –

+0

@at:感謝您的更新。現在我明白了什麼是錯的。 –

回答

8

怎麼樣使用下面的代碼:

<script type='text/javascript'> 
    top.location.href = 'http://www.yousite.com'; 
</script> 
+0

不,我已經嘗試過了...... –

1

從我的劇本

<script type='text/javascript'> 
      top.location.href = 'http://riseofkings.net/fb.php?setcook&cook=cookhere'; 
    </script> 

而且它總是工作。它是否會拋出任何錯誤,異常或類似情況?

如果你可以使用PHP,嘗試die()這段JavaScript代碼

+0

現在你的畫布頁面能工作嗎?有趣的是,當我取消註釋top.location.href語句時,我實際上得到了一個javascript異常:「Uncaught ReferenceError:a217374027657_top is not defined」。不知道這意味着什麼... –

+0

@at:我不知道,我已經從這個轉向直接解決方案編輯:是的:http://apps.facebook.com/riseofkings_login – genesis

+0

嗯,當我去你的畫布頁面,它重定向到接受你的申請。我接受了你的申請,然後我可以被重定向到你的網站。我想知道是否只有已經接受你的應用程序的人才能使用JavaScript重定向? –

-2

這是不可能的之後,Facebook的禁止故意此功能。你必須留在你的畫布上,打開一個彈出窗口(如果可能的話),或者創建一個鏈接供用戶點擊。

1

我只是做這在我的應用程序:

 
    if(window.top.location.href != window.location.href){ 
    window.top.location.href = window.location.href; 
    } 
只要將上畫布頁面的頂部。如果頂層href與您的畫布內容的網址不匹配,它會重定向到您的網站。

5

當心,將用戶重定向到一個外部網站可以違反 platform policy

The primary purpose of your Canvas or Page Tab app on Facebook must not be to simply redirect users out of the Facebook experience and onto an external site.

相關問題