2010-01-28 91 views
0

我有問題獲取一個div的背景URL背景圖片的問題與JavaScript

HTML:

<div id='test'></div> 

CSS:

#test { position:absolute; height:55px; width:85px; top:554px; left:197px; background:url('images/1.jpg'); } 

當我試圖讓背景通過使用下面的圖像網址顯示空白。

alert(document.getElementById("test").style.backgroundImage); 

但有趣的是它適用於以下

document.getElementById("test").style.backgroundImage="url('images/1.jpg')"; 
alert(document.getElementById("test").style.backgroundImage); 

注:沒有與URL的問題,因爲圖像正常顯示

回答

1

你不能得到,因爲JS一個外部CSS樣式信息只看着DOM。我不知道如果可能的,但你應該能夠獲得和修改CSS的信息,當您在風格標籤直接設置它的元素:

<div style="position:absolute; height:55px; width:85px; top:554px; left:197px; background:url('images/1.jpg');"></div> 
1

是的,這是可能的,但你需要元素總是:

function getStyles (element) { 
    element = document.getElementById(element); 
    if (element.currentStyle) { 
     return element.currentStyle; 
    } else if (window.getComputedStyle) { 
     return document.defaultView.getComputedStyle(element, null); 
    } 
} 

這應該返回一個關聯數組,其中包含給定元素的所有樣式。

在許多情況下,有趣的是,無法像JavaScript那樣直接從CSS訪問CSS樣式。