0

如何获取 flashvars 属性的值?

<embed src="http://wl2static.lsl.com/common/flash/as3/MemberApplet026.swf" 
id="opera_elb" width="100%" 
height="100%" 
allowscriptaccess="always" 
allowfullscreen="true" 
bgcolor="ffe8ef" 
quality="high" 
pluginspage="http://www.macromedia.com/go/getflashplayer" 
type="application/x-shockwave-flash" 
flashvars="muteaudio=0&amp;ishd=1&amp;ishq=0&amp;twoway=0&amp;proxyip=">

getElementsByTagName用来获取元素。

var Em = content.document.getElementsByTagName('embed');

并替换 flashvars 中的值

<script>
function myFunction()
{
var Em = content.document.getElementsByTagName('embed');
var str = Em[0].getAttribute('flashvars').innerHTML; 
var res = str.replace("muteaudio=0","muteaudio=1");
document.getElementsByTagName("embed").innerHTML=res;
}
</script>

但是当我尝试错误时: Uncaught ReferenceError: content is not defined 请帮助我。

4

1 回答 1

0

好的,这是一个解决方案(严格更改flashvars!的属性)。首先,我认为您的 JS 中有一些语法错误。所以我修改了它,这里是 JS:

    function myFunction()
    {
    var Em = document.getElementById('vid');
    var str = Em.getAttribute('flashvars');
     var contentSpot = document.getElementById("he");
           contentSpot.innerHTML = Em.getAttribute('flashvars');
    Em.setAttribute('flashvars', 'muteaudio=1')
//    contentSpot.innerHTML = Em.getAttribute('flashvars');/* I used this to see if the change occurred.*/
    }

window.onload = myFunction();

contentSpot为观察变化而创建的 div 元素也是如此。

html在这里:

<embed id="vid" src="http://wl2static.lsl.com/common/flash/as3/MemberApplet026.swf" 
id="opera_elb" width="100%" 
height="100%" 
allowscriptaccess="always" 
allowfullscreen="true" 
bgcolor="ffe8ef" 
quality="high" 
pluginspage="http://www.macromedia.com/go/getflashplayer" 
type="application/x-shockwave-flash" 
flashvars="muteaudio=0&amp;ishd=1&amp;ishq=0&amp;twoway=0&amp;proxyip=">
    <div id="he"> Hello</div> <!-- The created div to observe -->

好的,这是我的建议:

1)将清理后的代码弹出到jsfiddle中,然后观察内容。
2)然后删除contentSpot.innerHTML = Em.getAttribute('flashvars');代码上方的行:Em.setAttribute('flashvars', 'muteaudio=1')
3) 去掉注释斜线,然后按 ctrl + enter 观察属性变化。

*真正注意您的“.”/DOM 语法和区分大小写。

希望这可以帮助你!

于 2013-11-08T01:19:01.360 回答