Happy Pig's - 哼哼
开开心心每一天,勤勤奋奋过日子。

    今天测试给我们提了个BUG说,Flash边上有虚框,会把上面的菜单栏的导航隐藏,到网上搜了一下,微软给的解决方案就是外部调用JS代码的document.write方法,把<object>、<embed> 或 <applet> 编码的活动内容写入你的页面中,才可以自动激活,注意一定要是外部调用JS代码,在把JS代码和页面写在同一个文件中调用是不可以自动激活的。
   受影响的程序包括FLASH,Adobe Reader QuickTime Player,Media Player, RealPlayer, Java虚拟机等等。
解决方案
所以我们可以写一段JS function,然后在页面中把JS包含进来,用提供的参数动态输出这些受影响的内容。以FLASH为例:创建一个active.js的文件,输入以下代码

CODE:
function addFlash(ur,w,h){
            document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/sho ... h/swflash.cab#version=6,0,29,0" width="'+w+'" height="'+h+'">');
            document.write('<param name="movie" value="'+ur+'">');
            document.write('<param name="quality" value="high">');
            document.write('<paramname="wmode" value="transparent">');
            document.write('<param name="menu" value="false">');
            document.write('<embed  src="'+ur+'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer"  type="application/x-shockwave-flash" height="'+h+'"></embed>');
            document.write('</object>');
}


然后在页面中包含该文件:script type="text/javascript" language="javascript" src="active.js"></script>

在需要插入FLASH的地方插入:<script language="javascript" type="text/javascript">addFlash(FLASH URL,'FLASH width','FLASH height');</script>

当然active,js中你可以写更多的function addWMV 等等,或者带更多的参数,比如wmode等等,举一反三

posted on 2007-05-29 09:18  boulder  阅读(498)  评论(2编辑  收藏  举报