Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery按数据属性值查找元素_Jquery_Html_Css_Custom Data Attribute - Fatal编程技术网

jQuery按数据属性值查找元素

jQuery按数据属性值查找元素,jquery,html,css,custom-data-attribute,Jquery,Html,Css,Custom Data Attribute,我有以下几个要素: <a class="slide-link" href="#" data-slide="0">1</a> <a class="slide-link" href="#" data-slide="1">2</a> <a class="slide-link" href="#" data-slide="2">3</a> 有什么想法吗?使用 它在树下工作 获取每个元素的后代 在当前匹配元素集中,由选择器、jQu

我有以下几个要素:

<a class="slide-link" href="#" data-slide="0">1</a>
<a class="slide-link" href="#" data-slide="1">2</a>
<a class="slide-link" href="#" data-slide="2">3</a>
有什么想法吗?

使用

它在树下工作

获取每个元素的后代 在当前匹配元素集中,由选择器、jQuery对象或元素过滤

你也可以使用


您还可以使用
和self()
方法获取包装器DOM contain,然后
查找()
可以根据您的想法进行处理

$(函数(){
$('.slide link').andSelf().find('[data slide=“0”]”)。addClass('active');
})
.active{
背景:绿色;
}

我用变量而不是字符串搜索了一个相同的解决方案。
我希望我能在解决方案方面帮助某人:)


我的错。我尝试过,但在错误的地方(在动态添加元素之前…)。无论如何,谢谢你的努力!很好。@Upsidown先生欢迎乐于帮助:)哇!这个解决方案很棒!问题持续了几个小时,但这解决了它!如何将其等同于变量值
var slidernumber=“0”
,而不是常量
“0”
?如果出于某种原因,您不能依赖某个类的存在,那么您可以对第一部分使用通配符,如$('*[data slide=“0”]')。addClass('active');这里稍微解释一下,这不起作用的原因是,您试图查找属性为
[data slide=“0”]
.slide link
的后代。因为有些东西不能是它自己的后代,所以它没有任何东西可以返回。但是,如果您在这些链接周围有一个包装器,那么这将起作用:
$('.slide link wrapper').find('[data slide=“0”]').addClass('active')另请参见
$('.slide-link').find('[data-slide="0"]').addClass('active');
$('.slide-link[data-slide="0"]').addClass('active');
$('.slide-link').filter('[data-slide="0"]').addClass('active');
var numb = "3";
$(`#myid[data-tab-id=${numb}]`);