2014-01-12 38 views
0

我正在尋找具有特定HTML5數據屬性的子元素的父div。此代碼是工作的罰款:使用數據對象查找具有HTML5數據屬性的元素

$('#parent').find('*[data-something]').css('color', 'red');

後來我發現,你可以找到HTML數據使用jQuery的數據對象http://api.jquery.com/data/#data-html5

所以,我想屬性...

$('#parent').find($("#parent").data("something")).css('color', 'red');

...並不起作用。有誰知道爲什麼?

的jsfiddle:http://jsfiddle.net/Qct9v/

注:我必須使用find(),因爲我需要尋找子元素。

+0

你誤會.data'做什麼'。 –

回答

2

它不起作用,因爲data()不是過濾方法,它是用於獲取/設置數據值的getter/setter方法。

如果你想使用jQuery數據,那麼你可以試試

$("body").find('*').filter(function(){ 
    return $(this).data('something') != undefined 
}) 
+0

謝謝!在這種情況下,我猜想像我在第一個代碼中那樣傳遞數據屬性會更容易。代碼較少。 – CyberJunkie

+1

@Cyber​​Junkie是的,它更快 –

相關問題