flash 相信读者并不陌生,现在 flash 基本被淘汰了,但不排除还有一些古老企业会用,当然,作为一个对自己要求严格的前端开发工程师,不一定要会做 flash,但必须得知道怎么在页面中使用 flash。
在 HTML 5 之前,并没有 video 和 audio 这种多媒体元素,要播放视频就必须使用 flash,当然也有很多 flash 小游戏,目前 flash 基本已经被 HTML 5 彻底淘汰,主流浏览器均已不支持,所以其实只需要掌握 flash 的用法即可,并不深入学习。
flash 文件的后缀名是 swf,当我们拿到一个 flash 文件,通常使用 object 或者 embed 元素来嵌入 flash,这两个元素都是可替换元素。
先看 object 元素,object 元素用于嵌入文件,当然不仅可以嵌入 flash,用来嵌入图片这些其实也可以。
object 元素里有两个属性,分别是 data 和 type。data 填入 flash 文件的路径名,type 填入 flash 文件的 MIME 格式即可。
MIME
MIME 用于标识文件类型,和后缀类似,例如我们要嵌入 flash 文件,就需要使用 application/x-shockwave-flash,这就是 flash 文件的 MIME,有了这个 MIME 信息,浏览器才知道这玩意儿是 flash 文件,只有浏览器知道了这是 flash 文件,才知道如何渲染它。各种文件都有其对应的 MIME,可参阅 MIME(多用途互联网邮件扩展类型)_百度百科
记不住很正常,当需要使用的时候,搜索即可
object 元素内部可以嵌套 param 元素,param 元素用于传入参数,一个 param 元素传递一个参数,param 元素的 name 属性传递属性名,param 的 value 属性传入参数值。
embed 元素和 object 元素都用于嵌入外部资源,embed 元素的 src 属性对应 object 元素的 data 属性,embed 元素的 type 属性和 object 元素的 type 属性一样,如果要进行参数传递,直接写在 embed 元素的属性中即可。
embed 和 object 元素的功能其实是一样的,之所以有两个元素其实是早期浏览器的兼容性问题。我们可以把 embed 元素写在 object 元素内部,让 object 元素嵌套 embed 元素,就可以很好解决兼容性问题。