符合XHTML1.0规范的flash植入方法

     遇到一个问题:XHTML不支持embed标签,但是如果不用embed标签,那么在firefox中flash播放器就不会被调用。 查资料得知object标签符合XHTML规范,那么能不能用object标签在firefox中替代embed来调用flash播放器呢?
     经过测验下面代码能在IE和Firefox中正常调用Flash播放器:
< object  type ="application/x-shockwave-flash"  
    data
="layoutExampleApp.swf"   >
    
< param  name ="movie"  value ="layoutExampleApp.swf"   />
</ object >
classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"属性要去掉。很明显他是在调用flash的com组件,非microsoft平台肯定不支持,取而代之的是type属性,来指定object的数据类型。firefox用data属性来定位flash文件,IE用param来定位文件。问题解决。
时间紧张,书写简单,尽请见谅。
embed标签是网景浏览器特有的,用来在网页中调用插件和播放器的。如果要编写规范的程序,那么肯定要对embed说不。
    2007-04-05:补充说明一下,经过测验,上述的方法虽然能播放swf文件,但是存在很多问题。目前我发现的bug如下:
1.IE  中调用大个的swf有内存不能被正确回收。IEbug
2.IE+flex在frameset中,如果flex程序使用了ExtenalInterface.call的话,在关闭IE后会报一个错误,iframe同理。IEbug
3.Firefox+flex在frameset中tree的changedata事件如果使用ExtenalInterface.call会出现tree控件被锁死。
上述方法属于画蛇添足,没有必要这么做。
建议采取第三方的js脚本来插入swf,例如如果插入flash8的swf文件建议使用 swfobject,如果是flex那么使用flexbuilder自带的AC_OETags.js。这样插入的swf文件还能修复一些flashplayer的bug和IE的一些限制。例如IE6对ActiveX控件的限制,必须点击一下swf文件才能激活flash动画。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值