最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ie6 大環(huán)境下暫時不要考慮w3c標準

  發(fā)布時間:2010-02-24 22:43:08   作者:佚名   我要評論
這問題不知道該責(zé)罵不會自動更新的ie6,還是該詛咒不懂向下兼容的w3c標準。

這是flash傳統(tǒng)的嵌入方法:

復(fù)制代碼
代碼如下:

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="32" height="32">
<param name="movie" value="test.swf" />
<param name="quality" value="high" />
<embed src="test.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="32" height="32"></embed>
</object>

使用 object 和 embed 標簽來嵌入,細心的會發(fā)現(xiàn),object 的很多參數(shù)和 embed 里面的很多屬性是重復(fù)的。
有的瀏覽器支持 object ,有的支持 embed ,這也是為什么要修改 flash 的參數(shù)時兩個地方都要改的原因。這種方法是 macromedia 一直以來的官方方法,最大限度的保證了 flash 的功能,沒有兼容性問題。
但是自從有了w3c標準,和一些極力要求通過該標準的客戶,事情復(fù)雜了:
embed被認為是非法的
embed 標簽是 netscape 的私有標簽,雖然 embed 標簽應(yīng)用廣泛存在,但是從html3.2,html4.0到xhtml1.0,w3c都沒有收錄這個標簽。使用embed 標簽的頁面將不能通過w3c校驗。
其實他們這樣考慮也是正確的,大部分西方國家的用戶,正版vista系統(tǒng)基本上做到了普及,他們大多使用ie7.0/ie8.0等主流瀏覽器,使用這種簡介的標簽可以節(jié)省好幾行代碼:

<object type="application/x-shockwave-flash" data="test.swf" width="200" height="100"> <parm name="movie" value="test.swf /> </object>

但是在盜版泛濫的中國,多數(shù)用戶仍然在使用windows xp系統(tǒng)上自帶的ie6瀏覽器,而它是不支持object標簽的,只能使用變通的方式來解決。
目前的臨時辦法
既要符合標準,又想在所有瀏覽器正確顯示flash應(yīng)該怎么做?我們可以添加一段冗長的javascript來隱藏embed標簽:

復(fù)制代碼
代碼如下:

function getflashobject(flashsrc, objwidth, objheight, etcparam) {
var tag = "";
var baseflashdir="";
flashsrc = baseflashdir + flashsrc;
if ( etcparam != "" || etcparam != null ) {
if ( etcparam.substr(0, 1) == "?" )
flashsrc += etcparam;
else
flashsrc += "?" + etcparam;
}
tag += "<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" ";
tag += "codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0\" ";
tag += "width=\"" + objwidth + "\" height=\"" + objheight + "\">";
tag += "<param name=\"movie\" value=\"" + flashsrc + "\" />";
tag += "<param name=\"quality\" value=\"high\" />";
tag += "<param name=\"wmode\" value=\"transparent\" />";
tag += "<embed src=\"" + flashsrc + "\" quality=\"high\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" ";
tag += "type=\"application/x-shockwave-flash\" width=\"" + objwidth + "\" height=\"" + objheight + "\" ";
tag += "wmode=\"transparent\"></embed>";
tag += "</object>";
document.write(tag);
}

不只如此,還需要在頁面中添加若干調(diào)用該js的參數(shù)

復(fù)制代碼
代碼如下:

<script language="javascript" type="text/javascript">getflashobject('images/test.swf', '100%', '100%', '')</script>

那新的問題又出現(xiàn)了,如果用戶禁用了javascript怎么辦?
難道要先寫出更多的代碼,判斷用戶使用的是什么瀏覽器,然后根據(jù)瀏覽器再輸出合適的代碼?多影響頁面執(zhí)行效率啊,為了一個w3c標準,多那么多行代碼,讓每一個訪問自己網(wǎng)站的用戶多等待1秒鐘?
所以我想表述的觀點是:
目前,ie6普及的大環(huán)境下,暫時不要考慮w3c標準。用心做好自己的頁面,能少寫幾行代碼就少寫幾行代碼。不要為了標準去做標準。

相關(guān)文章

最新評論

泸西县| 曲周县| 耒阳市| 南丹县| 仁寿县| 基隆市| 河源市| 天长市| 阜康市| 南京市| 巴林右旗| 毕节市| 云龙县| 合山市| 安义县| 阜新市| 夹江县| 厦门市| 平利县| 兴山县| 鹿泉市| 德保县| 旺苍县| 上虞市| 新龙县| 托克托县| 文化| 鲜城| 松原市| 西城区| 慈溪市| 惠州市| 正宁县| 织金县| 舟曲县| 乌拉特后旗| 威海市| 通河县| 中山市| 方正县| 泰兴市|