IE9和HTML5以及XFBML之类的按钮在IE保护模式下不起作用

时间:2012-04-10 11:48:28

标签: internet-explorer facebook-like facebook-javascript-sdk facebook-social-plugins

我遇到了严重的问题,让我的按钮在IE9中工作。它在Chrome和Firefox中运行良好,但在IE9中单击“赞”或“发送新窗口”时会打开。我搜索了问题并发现了一些类似的帖子,但没有解决我的问题。我刚刚注意到我的网站和我的开发者环境都包含在IE可信站点中,因此标记为不使用保护模式。打开保护模式后,它可以工作。

所以我去FB查看我是否可以在http://developers.facebook.com/bugs报告错误,但却无法发现实际发布错误 - 只能浏览。所以除了发布这个以告知我对其他开发者的发现之外 - 任何人都可以指出我发布错误报告的正确方向。试图谷歌,但没有。

1 个答案:

答案 0 :(得分:1)

我的一切似乎都运转良好 我所能建议的只是

  1. 在async中初始化javascript sdk并将其代码放在<身体>标记给它加载的时间。 “它在14次尝试中失败了1次,这就是我建议的原因。 https://developers.facebook.com/docs/reference/javascript/
  2. 使用频道html文件加快Internet Explorer的加载速度。
  3. 以下是使用parse xfbml和async javascript渲染登录按钮的示例。


    <div id="loginbutton"></div>
    <div id="fb-root"></div>
    <script>
          window.fbAsyncInit = function() {
            FB.init({
        appId  : '135669679827333',
        status : true, // check login status
        cookie : true, // enable cookies to allow the server to access the session
        xfbml  : true, // parse XFBML
        channelUrl : 'https://anotherfeed.com/emo/channel.html', // channel.html file
        oauth  : true // enable OAuth 2.0
            });
    function loginbutton(){
    var loginb=document.getElementById('loginbutton');
    loginb.innerHTML='<div class="fb-login-button" data-show-faces="false" data-width="200" data-max-rows="1" data-autologoutlink="true" data-scope="read_stream,user_likes,publish_stream,publish_actions,read_friendlists,user_photos,user_groups,user_interests,user_videos"></div>';
    FB.XFBML.parse(loginb);
    };
    loginbutton();
          };
      // Load the SDK Asynchronously
    (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&appId=135669679827333";
      fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));
    </script>