2011-09-01 58 views
0

在CSS中添加圖像路徑過濾器,我有以下爲我的網站的背景是Internet Explorer時,縮放:由JavaScript

#background{filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/background1.jpg', sizingMethod='scale'); 
-ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/background1.jpg', sizingMethod='scale')";} 

這工作很大,但我需要改變圖像路徑一個來自javascript的變量,來自具有多種背景的數組。隨着自由度數字的增加,我在每次網站加載時選擇背景。

要做到這一點我做:

#background{filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='<script>document.write(background[rn]);</script>', sizingMethod='scale'); 
-ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='<script>document.write(background[rn]);</script>', sizingMethod='scale')";} 

但是,這是行不通的。縮放不再有效。

爲什麼?它出什麼問題了?你會如何使它工作?

非常感謝

回答

1

請問這項工作?:

<script> 
document.write("<style type=\"text/css\">\n#background{filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + background[rn] + "', sizingMethod='scale' \n-ms-filter: \"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + background[rn] + "', sizingMethod='scale')\";}\n</style>"); 
</script> 

在你的榜樣,你試圖插入引號內的腳本標籤,這是不可能的,因爲它只是被解釋爲一個字符串而不是一個腳本。

+1

這需要將'script'元素放在'style'元素中,這是不可能的。您還需要「編寫」style元素。 – RoToRa

+0

好點。我將它添加到我的解決方案中。 – Durden81

0

對於遇到此問題的其他人,在將其應用於主體標記時,無法動態更改此屬性。