用js改变embed标签的src值

今天有一需求,一堆视频,一堆链接,点击相关的链接,在本页打开相关的视频。

第一想法,很简单么,直接把src值改成点击的那个的href值就可以了。

试了下,发现这样不行,视频该怎么放还是怎么放,永远是刚打开那个。

第二想法,给embed外面加个标签,把里面内容清空,再写进去,这样总可以了吧。

试了下,和上面一样,依旧不行。

又试了许多类似方法,还是不行。

最后,想的,把embed标签隐藏(display:none),再清空试下。

终于可以了。哎浪费了一上午时间。

 

代码如下

var tabv = document.getElementById("f_tabv");
var tabva = tabv.getElementsByTagName("a");
var tabcv = document.getElementById("f_tab_cv");
tabcv.innerHTML = '<EMBED src="abc.wmv" autostart="true" width="545" height="325" type="video/x-ms-asf"></EMBED>';
for(var i=0; i<tabva.length; i++){
  tabva[i].onclick=function(){
      var href1 = this.getAttribute("href");
        var href2 = '<EMBED src="'+href1+'" autostart="true" width="545" height="325" type="video/x-ms-asf"></EMBED>';
        tabcv.getElementsByTagName("embed")[0].style.display="none";
        tabcv.innerHTML="";
        tabcv.innerHTML=href2;
        for(i=0; i<tabva.length; i++){
          tabva[i].className='';
        }
        this.className = "act";
        return false;
    }
}
posted @ 2012-07-23 12:09  jingangel  阅读(6894)  评论(1编辑  收藏  举报