符合XHTML1.0规范的flash植入方法
2007-03-31 01:01
344 查看
遇到一个问题: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动画。
经过测验下面代码能在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动画。
相关文章推荐
- Javascript获取页面大小值的方法__XHTML1.0规范
- XHTML规范1.0
- CF629C 在s两端在加两个串p和q 使得总长度为n,并且最后的s'符合规范的方法
- 符合web标准插入Flash的方法 - z
- 什么是DMI,SMBIOS,符合SMBIOS规范的计算机的系统信息获取方法
- Html 4.01常见规范及从Html转化为XHtml 1.0常见规范
- 符合web标准的嵌入Flash的方法
- 符合SMBIOS规范的计算机的系统信息获取方法[转]
- 符合web标准的嵌入透明Flash背景的方法(兼容IE和FireFox)
- 符合web标准的JS调用flash方法
- 符合web标准的JS调用flash方法
- XHTML1.0的Flash嵌入代码
- 在asp.net中使用符合xhtml规范的spliter控件
- 1、 编写一个方法(名字自定,但要符合Java编码规范),方法内打印一字符串,并在main()方法内调用它。
- 文档类型定义DTD - XHTML 1.0规范
- 符合SMBIOS规范的计算机的系统信息获取方法
- 什么是DMI,SMBIOS,符合SMBIOS规范的计算机的系统信息获取方法
- document.body.scrollTop 的值总是等于 0 的解决方法;DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN 与
- 比较简单的一个符合web标准的JS调用flash方法
- 比较简单的一个符合web标准的JS调用flash方法