Embed标签src重载

作者:nunumick 发布时间:25 May 2010 分类: front-end

<embed>标签可用于在页面内嵌入 flash 文件,比较常见的就是在页面内嵌入视频,如:

<embed src="http://player.youku.com/player.php/sid/XMTU3NzUyMDUy/v.swf" quality="high" width="480" height="400" allowscriptaccess="sameDomain" type="application/x-shockwave-flash"></embed>

接到一个小需求:需要动态更新 embed 标签的 src 属性,拿上面的代码为例,很容易找到思路:

  1. 获取embed标签
  2. setAttribute(‘src’)

类似于对待 img 标签。

遗憾的是,此法对于 ie 浏览器并不奏效,给 src 加上时间戳也无济于事。

最后无奈用更新dom节点的方式才得以实现。

各浏览器在处理 embed 重载时并不尽相同,在此简单做了测试:Demo

测试结果:

Y:响应重载 N:不响应重载

  IE(6/7/8) Firefox Chrome Safari Opera
重载(refresh movie) N Y N N Y
更换(change movie) N Y N N Y
Display显示/隐藏 N Y Y Y Y
Visibility显示/隐藏 N N N N N
设置innerHTML Y Y Y Y Y
Display hide > Change movie > Display show N Y Y Y Y

标签: embed , flash , browser , compatibility , html
<<< EOF

文章评论