• 在页面加载后在设置embed 的src 怎么实现?


    我想在页面加载完之后,再给embed 加入src 值,但embed 后播放不了。
    下面是我的两个方案,都无法播放,求解:

    <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
    <embed allowFullScreen="true" id="embedid"  quality="high" width="620" height="500" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash"></embed>
    <script type="text/javascript">
    	$(function(){
    		$("#embedid").attr("src","http://player.youku.com/player.php/sid/XMzE5NDUyNTcy/v.swf");
    /*		var ebd = document.getElementById("embedid");  
    		ebd.src = "http://player.youku.com/player.php/sid/XMzE5NDUyNTcy/v.swf";*/
    	})
    </script>

    1、

    embed 和 object 因为数据(video, audio, flash, activex)的特殊性,跟一般DOM处理上有所不同,在载入后浏览器会拒绝改变它们的 src 属性。

    解决这个问题的简单方法是插入整个 embed 元素。 如果是要改变已经在播放的 embed 的话,那得删除掉原来的一个再重新插入完整的 embed 了。。。

    <div id="box"></box>
     
    var box = document.getElementById('box')
    ,str = '<embed allowFullScreen="true" id="embedid"  quality="high" width="620" height="500" align="middle" src="http://player.youku.com/player.php/sid/XMzE5NDUyNTcy/v.swf" allowScriptAccess="always" type="application/x-shockwave-flash"></embed>';
    box.innerHTML = str;

    2、

    embed嵌入式对象是比较特殊的,你一旦嵌入到文档中无论怎么改src它都不会重新加载。其实你了解它的道理后也不难理解,它实质上是浏览器调用的外部插件来渲染的(比如你的例子就是调用的flash插件),这个渲染过程是在嵌入的时候就完成了,而这些属性也都是嵌入的时候传递给插件的。所以当你后面动态修改这些属性的时候,是不会重新传递这些属性的。

    要解决这个问题非常简单。你直接把这个嵌入对象用jQuery插入就行了,记得把src要写在里面哦,比如这样

    <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
    
    <div id="player"></div>
    
    <script type="text/javascript">
    $(function(){
    	$('<embed allowFullScreen="true" id="embedid"  quality="high" width="620" height="500" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash" src="http://player.youku.com/player.php/sid/XMzE5NDUyNTcy/v.swf"></embed>').appendTo('#player');
    })
    </script>
  • 相关阅读:
    UVA 1600
    P3366 【模板】最小生成树(堆优化prim)
    P2414 [NOI2011]阿狸的打字机
    P2322 [HNOI2006]最短母串问题
    P4052 [JSOI2007]文本生成器
    P4824 [USACO15FEB]Censoring (Silver) 审查(银)&&P3121 [USACO15FEB]审查(黄金)Censoring (Gold)
    P3966 [TJOI2013]单词
    P2444 [POI2000]病毒
    P3294 [SCOI2016]背单词
    P2922 [USACO08DEC]秘密消息Secret Message
  • 原文地址:https://www.cnblogs.com/jiangjunli/p/7262207.html
Copyright © 2020-2023  润新知