2014-01-14 52 views
1

例如自定義CSS屬性我有文件的main.css獲取與JS

#test { my-property-name: 10px; } 

和index.html

<div id="test"></div> 

我可以以某種方式得到這個div從js文件的my-property-name價值?

+2

http://stackoverflow.com/questions/8811027/get-elements-custom-css-properties -mystyle-using-javascript – Abhitalks

回答

-1
var my_element = document.getElementById('test'); 
var style_element = window.getComputedStyle(my_element); 
var property_value= style_element.getPropertyValue('YOUR_PROPERTY_NAME'); 
+0

在鉻中爲空 – redexp

+0

對不起,style_element.getPropertyValue('YOUR_PROPERTY_NAME'); ...不是style.getPropertyValue('YOUR_PROPERTY_NAME'); – Sebastien

-1

你只需要得到元素的計算風格。這將返回一個對象內的所有可能的CSS屬性。然後,您可以從該對象獲取所需的CSS屬性。

這是純JavaScript(如果有人不明白)

試試這個:

var allCss = window.getComputedStyle(document.getElementById('test')), 
    property_value= allCss.getPropertyValue("padding"); 

alert(property_value); 

的jsfiddle:http://jsfiddle.net/3ktu9/1/

+0

是否符合Op要求?你在小提琴中測試過它嗎?檢查這個:http://jsfiddle.net/abhitalks/3ktu9/2/ – Abhitalks

+0

你瘋了嗎?是'my-property-name'是一個有效的CSS屬性?他只是通過這個例子來舉一個例子。 –

+0

你甚至花了一些時間仔細閱讀這個問題?並請停止獲得* ad hominem *。它沒有幫助。 – Abhitalks

0

你可以寫你的財產,像這樣的屬性:

<div id="test" my-property-name="10px"></div> 

然後你可以使用jQuery ATTR()函數來檢索它

var x = $("#test").attr("my-property-name"); 
alert(x); 

見這裏的例子:​​

+0

這可能是可能的,但是使用內聯屬性代替CSS是一種可怕的方法。另外,雖然允許使用JavaScript,但這個問題並不意味着jQuery可用。 –

+0

真的嗎?我知道'attr'不是CSS –