IE Javascript SDK的IE8中的FB.ui Bug

时间:2010-05-20 08:42:28

标签: javascript css flash facebook sdk

我使用新的Facebook Javascript SDK在IE8中发现了一个错误。

我使用以下方式调用Post对话框:

FB.ui(
 {
  method: 'stream.publish',
  display: 'dialog',
  message: 'test',
  attachment: {
   name: 'test',
   caption: 'test',
   media: [
   {type: 'image', src: site_url+'test.jpg', href: site_url}
   ],
   description: (
   'test'
   ),
   href: site_url
  }
 },

我的html结构是:

<body>
  <div id="content"></div>
  <script type="text/javascript">
   var params = {
     wmode: 'opaque',
     allowScriptAccess: 'always',
     quality: 'high',
     allowFullScreen: "true"
    };
    var attributes = {
      id: 'test'
      };


    swfobject.embedSWF("frontend/swf/stage.swf", "content", "100%", "100%", "10", params, attributes);
   var site_url = 'http://test.com';
  </script>

  <div id="fb-root"></div>
  <script type="text/javascript" src="http://connect.facebook.net/en_US/all.js"></script>
  <div id="like-dialog" style="display:none;">
   <div id="like-dialog-wrapper">
    <div id="like-dialog-close"></div>
    <iframe src="http://www.facebook.com/plugins/likebox.php?id=99999999999&amp;width=292&amp;connections=0&amp;stream=true&amp;header=false&amp;height=395" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:292px; height:395px;"></iframe>
   </div>
  </div>
 </body>

css:

html, #content, body {
    margin: 0;
    height: 100%;
    overflow: hidden;
}
#content {
        z-index: 1;
}

我所做的是:

  1. 我嵌入了我的舞台

  2. 我调用FB.init函数,然后调用FB.ui函数覆盖我的flash。

  3. 它适用于除IE8之外的所有常见浏览器。

    在IE8中,包含iframe的div在我嵌入flash的div后面,虽然我设置了z-index并将对话框置于绝对位置。

    任何想法?

    提前致谢

2 个答案:

答案 0 :(得分:0)

将wmode设置为透明。

答案 1 :(得分:0)

swfobject 切换到标准嵌入代码为我工作。

(wmode 透明