<object id="fplayer" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0"
    width="548" height="500">
        <param name="movie" value="http://www.cnzz.cc/Flv/Flvplayer.swf" />
        <param name="quality" value="high" />
        <param name="allowFullScreen" value="true" />
        <param name="FlashVars" value=""
        />
    </object>
在param的FlashVars里面存放的是视频文件的地址,怎样才能实现通过用户点击不同的按钮来播放不同的视频文件呢?谢谢各位

解决方案 »

  1.   

    使用swfobject动态生成flash标签,用户点击不同的按钮则删除以前的flash并重新生成一个新的flash。
    参考代码如下:
    //用户点击不同的按钮则重新执行一次该函数。参数为flashVars
    function createFlash(){
    var params = {
    id: "divId",
    flashUrl: "",
    expressInstallUrl: "",
    width: 548,
    height: 500
    };
    var flashVars = {
    };
    var flashParams = {
    allowScriptAccess: "sameDomain"
    };
    var flashAttributes = {
    id: params.id,
    name: params.id,
    wmode: "Opaque"
    };
    swfobject.embedSWF(params.flashUrl, params.id, params.width, params.height, "10.0.0", params.expressInstallUrl, flashVars, flashParams, flashAttributes);
    }
      

  2.   

    重写是最好改变param值的方法!!!!
      

  3.   

    二楼方法太麻烦了。效率也差。直接改变param值就行了。方法1:通过子对象索引,因为受索引顺序的影响,有时还得加上遍历判断,一般不推荐。
    方法2:给要更改的param加上id="theforever",然后就可以通过getElementById直接取得和更改了。
    <param name="FlashVars" id="theforever" value="赵亮" />alert(document.getElementById("theforever").value);
    document.getElementById("theforever").value="碧海情天";
    alert(document.getElementById("theforever").value);by theforever@csdn
      

  4.   


    js在改变FlashVars值的时候flash不一定会重新读新的值,必须要重新加载flash才行的。
      

  5.   

    哦,是了,没多想,是FlashVars,初始化时读取的,不是movie,src之类的会即时反映。
    那就是那样重新加载了。
      

  6.   

    但用swfobject的方式总觉得比较繁琐,不知有何特别的好处。一般更喜欢用个DIV把OBJECT包起来。喜欢直接重写DIV的INNERHTML,跟原来的OBJECT代码基本一样,复制过来修改一下FlashVars内容即可。当然引号需要注意一下。
      

  7.   

    swfobject考虑了浏览器兼容性问题,直接写innerHTML就得你自己考虑了。
      

  8.   

    swfobject还内置了检测flash版本的方法
      

  9.   

    谢谢楼上各位的解答,我也是想到了div写innerHTML 哈哈,多谢各位swfObject的也学写了,谢谢啦