Javascript 检索具有组合CSS属性的元素
可能重复:Javascript 检索具有组合CSS属性的元素,javascript,jquery,html,dom,Javascript,Jquery,Html,Dom,可能重复: 如何使用jquery检索具有组合或非标准CSS属性的所有元素?例如,如果属性为“emotion”且其值为“happy”,我如何遍历dom并检索具有所述属性的元素,如果需要,检索其值 HTML <div class="book"> </div> Javascript/jquery查询,通过具有情感属性的图书查找图书 ??? 谢谢大家! 无效或未知的CSS属性(非属性)将被浏览器忽略,并且无法访问它们,因为它们未添加到DOM。无效或未知的CSS属性(非属性)
如何使用jquery检索具有组合或非标准CSS属性的所有元素?例如,如果属性为“emotion”且其值为“happy”,我如何遍历dom并检索具有所述属性的元素,如果需要,检索其值 HTML
<div class="book">
</div>
Javascript/jquery查询,通过具有情感属性的图书查找图书
???
谢谢大家! 无效或未知的CSS属性(非属性)将被浏览器忽略,并且无法访问它们,因为它们未添加到DOM。无效或未知的CSS属性(非属性)将被浏览器忽略,并且无法访问它们,因为它们未添加到DOM中。您希望使用如下所示的数据属性:
<div class="book" data-emotion="happy"></div>
您希望使用数据属性,如下所示:
<div class="book" data-emotion="happy"></div>
可以在DOM中获取具有任意属性的元素:
<div emotion="happy">:)</div>
...
console.log($('div[emotion="happy"]').text());
// prints ":)"
:)
...
console.log($('div[emotion=“happy”]”)text());
//印刷品“:”
。。。但最好是:
<div data-emotion="happy">:)</div>
...
console.log($('div[data-emotion="happy"]').text());
// prints ":)"
:)
...
console.log($('div[data emotion=“happy”]”)text());
//印刷品“:”
因为使用
它也不会被解析为CSS规则,您为什么要这样做?您可以在DOM中获得具有任意属性的元素:
<div emotion="happy">:)</div>
...
console.log($('div[emotion="happy"]').text());
// prints ":)"
:)
...
console.log($('div[emotion=“happy”]”)text());
//印刷品“:”
。。。但最好是:
<div data-emotion="happy">:)</div>
...
console.log($('div[data-emotion="happy"]').text());
// prints ":)"
:)
...
console.log($('div[data emotion=“happy”]”)text());
//印刷品“:”
因为使用
它也不会被解析为CSS规则,您为什么要这样做?尽管我认为您可以/不应该基于CSS属性搜索元素: 休息我希望它对事业有所帮助
:)
请试试这个:
var x = $('div').filter(function(){ return this.style.some_prop == 'whatever' });
^------- ------ ^
注意:如果要搜索属性,请参见此处
$(parentElement).find('*[someAttributeName]').each(function(index){
doSomething(this);
});
尽管我认为您可以/不应该基于css属性搜索元素: 休息我希望它对事业有所帮助
:)
请试试这个:
var x = $('div').filter(function(){ return this.style.some_prop == 'whatever' });
^------- ------ ^
注意:如果要搜索属性,请参见此处
$(parentElement).find('*[someAttributeName]').each(function(index){
doSomething(this);
});
有人向我提到的一个解决方法是使用CSS解析器,例如:有人向我提到的一个解决方法是使用CSS解析器,例如:如果你使用HTML5,你可以使用
数据
属性:为什么你不想只使用类?我会使用class=“book emotion happy”
,然后可以使用.className
访问/更改它。如果使用HTML5,可以使用数据
属性:为什么不想只使用一个类?我会使用class=“book emotion happy”
,然后可以使用.className
访问/更改它。是的;这就是为什么要创建一个非标准的CSS属性?+1和重复提及:)
@Tats\u innit lol,谢谢你bruv:)
是的;这就是为什么要创建一个非标准的CSS属性?+1和重复提及:)
@Tats\u innit lol,谢谢你bruv:)
我正在尝试用JavaScript编写一些支持未来CSSY的东西,无论如何,你不应该根据CSS类的属性进行选择。通过类本身选择。我正在尝试用JavaScript编写一些支持未来CSSY的东西。无论如何,你不应该通过CSS类的属性来选择。由班级自己选择。@zallarak brilliant,你投了反对票是因为?什么不起作用?你能解释一下吗?请:)
@Raminson lol谢谢bruv,lol我会投票给你的,等等,:)
@Tats\u是的,它不起作用,你和其他人的例子也不起作用,直到我发布了一个JSFIDLE[现在被删除]。“我不是想和你们争论,我只是想弄明白。”扎拉拉克·布莱恩特,你们投了反对票,因为?什么不起作用?你能解释一下吗?请:)
@Raminson lol谢谢bruv,lol我会投票给你的,等等,:)
@Tats\u是的,它不起作用,你和其他人的例子也不起作用,直到我发布了一个JSFIDLE[现在被删除]。不是想和你们争论,我只是想弄明白。嘿,好链接<代码>:)+1祝你好运!嘿,好链接<代码>:)+1祝你好运!