[英]fb:like when asked to sign in IE doesnt work
我正在將Facebook Like Button添加到我的網站。
我在aspx頁面中添加了以下內容:
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId: 'ID',
status: true,
cookie: true,
xfbml: true // parse XFBML
});
};
(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 = "//connect.facebook.net/en_US/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
} (document, 'script', 'facebook-jssdk'));</script>
</script>
這到html
標簽:
xmlns:fb="http://www.facebook.com/2008/fbml" xmlns:og="http://ogp.me/ns#" prefix="og: http://ogp.me/ns#"
這是我的樣子:
<fb:like send="false" layout="standard" width="350" style="height:22px;" show_faces="false" action="like" colorscheme="light"></fb:like>
我確實為OpenGraph添加了meta標簽。
在所有瀏覽器上對其進行測試時,它都可以正常工作。 如果未登錄Facebook,則需要登錄后才能顯示該項目,然后會出現一個彈出窗口,在您輸入正確的用戶名和密碼后,該窗口將關閉。
但是在IE(9)中會出現一個窗口,在我輸入用戶名和密碼后,它會重定向到此鏈接: http : //www.facebook.com/connect/connect_connect_to_external_page_reload.html
這是空白頁,之后什么也沒有發生,它沒有關閉,我不能喜歡任何項目。
即使我已經在IE上單擊之前登錄了Facebook,也仍然可以輸入用戶名和密碼。
我想念什么嗎?
在IE中讓一切對我有用。 最后,這就是我所做的。
在頁面的開頭,我添加了以下內容
<html lang="en" xmlns:og="http://ogp.me/ns#" xmlns:fb="http://ogp.me/ns/fb#">
我使用XFBML格式添加了“喜歡”按鈕和“發送”按鈕(由於某些原因,我無法使HTML 5版本正常工作)注意:我還必須分別添加它們。 由於某些原因,當我不使用FB:Send並使用FB:like send =“ true”時,它在IE 10中不起作用。如果只希望不添加FB:Send行。
<fb:like href="http://www.domain.com" send="false" layout="button_count" width="60" show_faces="false" action="like" font=""></fb:like> <fb:send href="http://www.domain.com"></fb:send>
我將腳本添加到頁面中
<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 = "//connect.facebook.net/en_US/all.js"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk')); </script>
我添加了channelUrl以確保它在IE 8和9中都能正常工作
<script> window.fbAsyncInit = function () { //fbAsyncInit prevents call of FB.getLoginStatus before the SDK is loaded and/or initialized FB.init({ appId: "You app ID here bunch of digits", status: true, // check login status cookie: true, // enable cookies to allow server to access session, xfbml: true, // enable XFBML and social plugins oauth: true, // enable OAuth 2.0 channelUrl: 'http://channel.html' //custom channel }); };
用以下內容創建Channel.html文件
<script src="//connect.facebook.net/en_US/all.js"></script>
我面臨着同樣的問題。 我發現禁用IE9中的保護模式設置可以解決此問題。 您可以在“ Internet選項”->“安全性”->“ Internet”->“啟用保護模式”復選框中找到它。 讓我知道是否有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.