2009-10-13 89 views
0

当点击“预览”链接时,它意味着使用innerHTML方法更改视频脚本和视频swf,但是在IE 7或更高版本中,flash似乎会出现,但从未加载视频,即它只是保持白色。innerHTML flash视频无法加载问题

<script> 
function changeVideo(filename,script) {document.getElementById('video').innerHTML = 
'<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" 
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" 
width="610" height="400" id="movie" align=""><param name="'+filename+'" 
value="'+filename+'.swf"><embed src="'+filename+'.swf" quality="high" width="610" 
height="400" name="'+filename+'" align="" type="application/x-shockwave-flash" plug 
inspage="http://www.macromedia.com/go/getflashplayer">'; 
document.getElementById('mainText').innerHTML = script; 
} 
</script> 

--//-- 

<div id="video"> 

</div> 

<div id="mainText"> 
<p style="margin-top:0px;">Some Text</p> 
</div> 

<div id="videoSelector"> 
    <div class="videoPolaroid"> 
     <div class="videoThumb"><img src="images/preview-image.jpg" /></div> 
     <div class="videoCaption">Caption</div> 
     <div class="videoPreview"><a href="#" onclick="changeVideo('robots','<p><b>Some more text<\/b><\/p>'); return false;">Preview</a></div> 
     <div class="videoDownload"><a href="#">Download</a></div> 
    </div> 
</div> 

我打算的JavaScript采取2个参数,视频文件的名称,这就是被置于“的mainText” DIV HTML文本。

任何帮助将不胜感激,谢谢。在这种情况下使用swfobject

+0

您可能会考虑使用SWFObject而不是 – inkedmn 2009-10-13 00:07:00

回答

1

试试看你能使用的功能

function changeVideo(filename,script){ 
    swfobject.embedSWF(filename, "video", "610", "400", "9.0.0"); 
    document.getElementById('mainText').innerHTML = script; 
} 

请记住,包括swfojbect JavaScript文件在你的页面。您可以从Google的CDN获取文件check here

+0

我不知道swfobject是如此简单易用。 :)我会放弃一下,谢谢。 – weedave 2009-10-13 11:08:55

+0

我使用了上面的函数,包含了swfobject.js文件,但现在它在任何浏览器中都不工作。如果点击预览链接,它会更改“mainText”div中的文本,但会更改视频,但会因为未加载而保持白色。有什么建议么? – weedave 2009-10-13 11:20:10