我最近使用XFBML实现了Facebook登录按钮和Facebook“赞”按钮。您可以在http://colnect.comFacebook登录/在IE8上失败
上看到该网站一切正常与FireFox,Chrome,Opera & Safari。
但是,IE并没有显示“登录”或“喜欢”按钮,也没有错误消息。
任何想法?
我最近使用XFBML实现了Facebook登录按钮和Facebook“赞”按钮。您可以在http://colnect.comFacebook登录/在IE8上失败
上看到该网站一切正常与FireFox,Chrome,Opera & Safari。
但是,IE并没有显示“登录”或“喜欢”按钮,也没有错误消息。
任何想法?
好像我会是那种回答自己的人,希望能帮助别人。
对于Internet Explorer认识到Facebook的你应该增加
xmlns:fb="http://www.facebook.com/2008/fbml"
到您的HTML标签,对我来说这
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xml:lang="en">
我的第二个问题是,IE不支持Array.indexOf ()所以这里是围绕它的方式:
if(!Array.indexOf){
Array.prototype.indexOf = function(obj){
for(var i=0; i<this.length; i++){
if(this[i]==obj){
return i;
}
}
return -1;
}
}
希望它有帮助。
我用这段代码解决了我的问题。其他解决方案不适用于我的情况。
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '330984983742',
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
};
(function() {
var e = document.createElement('script');
e.src = document.location.protocol + '//connect.facebook.net/<?php echo ($_SESSION["lang"]=="es")?"es_ES":"en_US"; ?>/all.js';
e.async = true;
document.getElementById('fb-root').appendChild(e);
FB.XFBML.parse('fb-stuff');
}());
</script>
我希望它能帮助别人。
对我而言,这一招总是把class='fb-like'
添加到<fb:like>
标签。
对我来说,我需要一个通道文件,如FB Javascript SDK中所述。我张贴了类似的问题的回应 - 也许它可以帮助你的情况太:
<fb:login-button> problems with IE8 (Internet Explorer) only
请试着解释你的代码是如何为你的代码之间的唯一显着的区别和不同的矿是FB.XFBML。解析( 'FB-东西'); – Collector 2011-01-16 05:09:43
谢谢。我动态添加类似按钮,并且只有在我添加FB.XFBML.parse('父div对象')之后 - 它才开始在IE9中显示......! – 2012-10-17 16:12:09