这几天要用图片新闻,觉得bcastr4.0很好,所以使用了,在IE7-9,FF,谷歌,遨游,均测试通过,都是用HTML测试的,测试代码如下:
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>test</title>
</head>
<body>
    <div>
       
        <object type="application/x-shockwave-flash" data="bcastr4.swf?xml=bcastr.xml"  width="600" height="300" id="vcastr3">
            <param name="movie" value="bcastr4.swf?xml=bcastr.xml" />
        </object>
    </div>
</body>
</html>
显示非常正常,但是放入ASPX,IE9下无法显示,一片空白,急人,代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="bcastr.WebForm1" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <div>
       
        <object type="application/x-shockwave-flash" data="bcastr4.swf?xml=bcastr.xml"  width="600" height="300" id="vcastr3">
            <param name="movie" value="bcastr4.swf?xml=bcastr.xml" />
        </object>
    </div>
</body>
</html>
然后想到了替代方案,使用IFRAME签入先前的HTML,一样空白
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="bcastr.Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>test</title>
</head>
<body>
<div>
     <iframe src=bcastr4.html></iframe>
</div>
</body>
</html>
求大神解答

解决方案 »

  1.   

    补充说明:
    但是放入ASPX中FF ,谷歌, 遨游 ,IE7-8均正常显示,IE9空白,付bcastr4.0下载链接http://xiaogui.org/bcastr-open-source-flash-image-silde-show.html
      

  2.   

    楼主观察力不够。
    人家的网页声明为
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">aspx 默认
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">html 的标准不同导致的差异。
      

  3.   


    貌似不是这个问题,就是改成这样
    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="bcastr.Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head id="Head1" runat="server">
    <title>test</title>
    </head>
    <body>
    <div>
         <iframe src=bcastr4.html></iframe>
    <object type="application/x-shockwave-flash" data="bcastr4.swf?xml=bcastr.xml"  width="600" height="300" id="vcastr3">
    <param name="movie" value="bcastr4.swf?xml=bcastr.xml" />
    </object>
    </div>
    </body>
    </html>
    一样是一片空白,但是在IE7\IE8正常显示,IE9就是不显示
      

  4.   

    自己解决了,原来IE9需要classid属性,否则不加载FLASH,而FLASH的classid为d27cdb6e-ae6d-11cf-96b8-444553540000
    原页面改为<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="bcastr.Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head id="Head1" runat="server">
        <title>test</title>
    </head>
    <body>
        <div>
            <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0"
                width="300" height="150">
                <param name="movie" value="bcastr4.swf?xml=bcastr.xml" />
            </object>
        </div>
    </body>
    </html>
    后,IE可以显示正常,但是同时发现FF、Chrome失效,产生了新的问题,继续研究发现,加上CLASSID后,还得加上另外属性<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="bcastr.Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head id="Head1" runat="server">
        <title>test</title>
    </head>
    <body>
        <div>
            <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0"
                width="300" height="150">
                <param name="movie" value="bcastr4.swf?xml=bcastr.xml" />
                <embed src="bcastr4.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer"
                    type="application/x-shockwave-flash" width="300" height="150"></embed>
            </object>
        </div>
    </body>
    </html>
    至此,终于全部兼容了,测试范围IE6-9,FF,Chrome、遨游