今天有一需求,一堆视频,一堆链接,点击相关的链接,在本页打开相关的视频。
第一想法,很简单么,直接把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; } }