2011-12-22 14 views
0

我有一個小的單行標題和一個視頻的頁面。我需要這個視頻不要太大,以至於「過度摺疊」。 我使用下面的嵌入代碼嵌入Flash視頻到網頁:使用基於查看區域的javascript動態更改HTML對象中嵌入的Flash文件的大小

<object type="application/x-shockwave-flash" data="AdobeCaptions_controller.swf" width="800" height="722"> 
<param name="quality" value="best" /> 
<param name="bgcolor" value="#1a1a1a" /> 
<param name="allowfullscreen" value="true" /> 
<param name="scale" value="showall" /> 
<param name="allowscriptaccess" value="always" /> 
<param name="flashvars" value="autostart=false&thumb=FirstFrame.png&thumbscale=45&color=0x1A1A1A,0x1A1A1A" /> 

不幸的是我的一些同事都在老人側了一下,到可笑的小尺寸已經縮小他們的瀏覽器。我知道如何使用JavaScript來確定瀏覽器的查看區域,但我似乎無法控制html中的寬度和高度值。我確信我錯過了最簡單的細節之一。任何幫助將不勝感激。

+0

這很奇怪,代碼沒有發佈。 – 2011-12-22 23:11:39

+0

< param name =「bgcolor」value =「#1a1a1a」/> 2011-12-22 23:13:09

回答

0

更新:

我想通了我做錯了什麼。對於將來發生此問題的任何人,我發現無法重新嵌入新對象就無法動態調整Flash內容的大小。我可以通過以下方式獲得滿意的結果:

<script type="text/javascript"> 
var vid_width = 800; 
var vid_height = 722; 
if (window.innerWidth){ //if browser supports window.innerWidth 
    var width = window.innerWidth; 
    var height = window.innerHeight; 
} 
else if (document.all){ //else if browser supports document.all (IE 4+) 
    var width = document.body.clientWidth; 
    var height = document.body.clientHeight; 
} 
if(height<(vid_height+40)){//if window is not tall enough 
    var scale_factorH = (height-40)/vid_height; 
    vid_height = vid_height * scale_factorH; 
    vid_width = vid_width * scale_factorH; 
} 
if(width<vid_width){//if window is not wide enough 
    var scale_factorW = width/vid_width; 
    vid_height = vid_height * scale_factorW; 
    vid_width = vid_width * scale_factorW; 
} 
</script> 
<script type="text/javascript"> 
document.write("<object "); 
document.write(" width = '"+vid_width+"' "); 
document.write(" height = '"+vid_height+"' "); 
document.write("id='csSWF'>"); 
</script> 
相關問題