网页嵌入Flash的两种方式

2010年5月18日 | 标签: ,

说成三种也可以,因为第一种倒是可以分为两类。所有内容均收集于网络,学习之用。

  1. object和embed标签
    典型代码如下:

    1
    2
    3
    4
    5
    6
    7
    8
    
    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="550" height="400" id="Untitled-1" align="middle">
    <param name="allowScriptAccess" value="sameDomain" /> 
    <param name="movie" value="mymovie.swf" /> 
    <param name="quality" value="high" /> 
    <param name="bgcolor" value="#ffffff" /> 
    <embed src="mymovie.swf" quality="high" bgcolor="#ffffff" width="550" height="400" name="mymovie" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
    </object>
     

       这种方法是使用 object 和 embed 标签来嵌入,其中“D27CDB6E-AE6D-11CF-96B8-444553540000”是类ShockwaveFlash的GUID,定义一个id为Mp3Player的类实例。object 的很多参数和 embed 里面的很多属性是重复的,这是为了浏览器的兼容性,有的浏览器支持 object,有的支持 embed,这也是为什么要修改 Flash 的参数时两个地方都要改的原因。
      缺点就是:embed 标签是 Netscape 的私有标签,虽然 embed 标签应用广泛存在,但是从HTML3.2,HTML4.0到XHTML1.0,W3C都没有收录这个标签。因此使用embed 标签的页面将不能通过W3C校验。另一方面,虽然只使用object标签可以通过验证,但是在盗版泛滥的中国,多数用户仍然在使用windows xp系统上自带的IE6浏览器,而它是不支持object标签的。

  2. 使用js嵌入,如SWFObject
      SWFObject是一个用于在HTML中方面插入Adobe Flash媒体资源(*.swf文件)的独立、敏捷的JavaScript模块。该模块中的JavaScript脚本能够自动检测PC、Mac机器上各种主流浏览器对Flash插件的支持情况。它使得插入Flash媒体资源尽量简捷、安全。而且它是非常符合搜索引擎优化的原则的。此外,它能够避免您的 HTML、XHTML中出现object、embed等非标准标签,从而符合更加标准。
      下面是一个最简单的范例,其中 DIV结点内的所有内容都会在客户端被Flash资源替换:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    <script type="text/javascript" src="swfobject.js"></script>
     
    <div id="flashcontent">
      This text is replaced by the Flash movie.
    </div>
     
    <script type="text/javascript">
       var so = new SWFObject("movie.swf", "mymovie", "200", "100", "7", "#336699");
       so.write("flashcontent");
    </script>

主要参考网址:
关于网页中嵌入Flash的方法
你在骗W3C,还是在骗自己的客户?
百度百科:SWFObject

PS:不能切换到可视化模式,不然可就麻烦了!代码高亮仍然是个问题—万戈推荐的那个代码发芽网贴出来的代码太恐怖了,特别是代码多的时候;排版仍然不知怎样才好看,现在用几个全角的空格做缩进。。

声明:本站文章如无特别说明均为原创,转载请注明转自:网页嵌入Flash的两种方式
  1. 2010年5月18日23:24

    :mrgreen: 第一个方法前段时间还在本地wp上使用了呢,不知道有没有让flash不自动播放的方法?

    • 2010年5月19日08:12

      @bobsheep 播发器一般都有autoplay可以控制,我侧边栏这个时钟就没办法不让他自动“播放”了

  2. 2010年5月19日00:06

    貌似优酷,土豆那些分享用的就是第一个

  3. 2010年5月19日04:35

    我想用html5的那个.

    • 2010年5月19日08:15

      @littlebear chrome是支持直接播放MP3和MP4了,界面也还漂亮,但等都支持html5还早呢—有篇文章叫html5视频格式之争,讲的有道理的呢~~

  4. 2010年5月19日07:58

    好像是,试试看

  5. 2010年5月19日08:43

    羡慕这种效果,却没时间折腾

  6. 2010年5月19日14:25

    博主,你好!
    经常在您的博客上评论,想做个调查,请您一定参与,谢谢。
    具体内容,请参考:http://www.ropean.org/SEO/Spam.htm
    感谢您的配合!

  7. 2010年5月19日15:47

    我觉得各有各的好处吧~

    • 2010年5月19日19:29

      @集趣 我引用的中间那片文章就说“所以我想表述的观点是:
      目前,IE6普及的大环境下,暂时不要考虑W3C标准。用心做好自己的页面,能少写几行代码就少写几行代码。不要为了标准去做标准。”——还是有道理的

  8. 2010年5月19日18:26

    俺有兼容W3C的代码,我那全站通过W3C和CSS2.1、3.0的 :lol:

    
    
  9. 2010年5月19日18:27

    啊 你评论框不能插入代码哦。。 :!:

  10. 2010年5月19日18:28
    1
    
     

    再试下 看看有发布不? 备注下我那的地址算了。

  11. 2010年5月19日18:31

    俺变灌水了 奇怪你这里装了/wp-syntax,可评论里面不能加入,5555 俺HTTP地址也发不了? 那这样可以了不 skyoy.com/w3c.html

    • 2010年5月19日19:27

      @Skyoy 看我下面这个,可以的啊,我现在懒得去管W3C,那个好用用哪个 :idea:

  12. 2010年5月19日19:26
    1
    2
    
    #include iostream.h
    cout << "I don't wanna die with you assholes! you guys sucks!";
  13. 2010年5月19日20:42

    不是很喜欢flash,因为搜索不喜欢他

  14. 2010年5月21日15:53

    第二段代码没用过,第一段不兼容部分浏览器。 :razz:

    • 2010年5月21日16:14

      @朵未 第一段object和embed都用了,基本上通吃了,只是通不过W3C验证啊 :?:

  15. 2010年5月28日14:12

    这个有什么用处

3 trackbacks

  1. Flash Mp3 Player大集合 - 自在飞 Pingback | 2010/05/19
  2. Casino 1274312668 Trackback | 2010/05/20
  3. Flash Mp3 Player大集合 Pingback | 2010/05/20