Javascript 如果数据属性为true,则添加类

Javascript 如果数据属性为true,则添加类,javascript,jquery,Javascript,Jquery,当幻灯片可见时,我希望滑块中的按钮带有下划线。 我想我需要检查数据属性是否为true,然后添加类 检查我的网页时,我在properties>dataset:DOMStringMap>isactiveslide:“true”中发现了这一点 我需要检查幻灯片是否有isactiveslide:“true”(甚至数据也是isactiveslide:“true”),然后添加类 我想我已经很接近了,并且已经尝试过这两种代码: jQuery(function () { if (jQuery('menu1'

当幻灯片可见时,我希望滑块中的按钮带有下划线。 我想我需要检查数据属性是否为true,然后添加类

检查我的网页时,我在properties>dataset:DOMStringMap>isactiveslide:“true”中发现了这一点

我需要检查幻灯片是否有isactiveslide:“true”(甚至数据也是isactiveslide:“true”),然后添加类

我想我已经很接近了,并且已经尝试过这两种代码:

jQuery(function () {
  if (jQuery('menu1').attr('isactiveslide') === true) {
    jQuery(this).find("#test1").addClass("underline");
  }
})

编辑(在一些很棒的答案和问题之后添加)

这是从页面复制的数据属性“isactiveslide”出现的部分:

<rs-slide data-key="rs-1898" data-title="WORKS" data-in="o:0;" data-out="a:false;" class="menus works1" id="works1" data-originalindex="2" data-origindex="1" data-description="" data-sba="" data-scroll-based="false" style="overflow: hidden; height: 100%; width: 100%; z-index: 20; opacity: 1; visibility: inherit;" data-owidth="300" data-oheight="200" data-rspausetimeronce="0" data-isactiveslide="true"><
非常感谢您的帮助

请尝试以下代码:

var$=document.querySelectorAll.bind(document)//不需要jquery-只需导入函数即可
$(“.menu1[数据为活动幻灯片]”)。forEach((el,索引)=>{
$(“#test1”)[index].classList.add('underline');
$(“#test1”)[index].innerText=“Selected!”;
控制台日志(1);
})
1
2.
3.
4.
5.
6.
7.
8.
9
可以通过css轻松完成: 您需要找到应用于活动幻灯片和按钮的类

rs-slide.menus[data-isactiveslide="true"] .button-class-name-here{
       text-decoration:underline!important;
}


找到您正在使用的滑块,并在该滑块的幻灯片更改事件中应用按钮上的类进行样式设置。

Post js和html将非常有用。您可以使用数据属性-。@GeorgeMa我不确定如何做到这一点。尴尬…@吸热龙谢谢你的链接。这对我来说很难。我想我理解如何获取属性,但我不知道如何检查它是否属于一个div,以便将一个类添加到另一个div中……我不确定这是什么意思。您正在元素中寻找子div吗?如果是这样,那么用于搜索元素的任何函数都将起作用-
querySelector
querySelectorAll
getElementsByTagName
getElementsByClassName
getElementsByName
getElementById
,等等。要使用它,只需执行
element.getElem…
。请注意这是如何在元素上完成的,而不是在
文档上完成的。您好,这看起来很棒。我尝试过一点,但是我不能将它与现有的HTML结合起来。我已经把它添加到原来的帖子里了!你觉得怎么样?在
forEach
$(“.menu1[data isactiveslide='true']”)之前尝试这样做,我明白了!但不幸的是,它不起作用。谢谢!这的确是一个很好的建议。它应该会起作用。我确信我做的一切都是对的。如果你能看看5月4日的代码,我将不胜感激!我在原来的帖子里加了这个,我觉得很接近;jQuery(“#slide1[data isactiveslide=“true”])(“#slide1 btn”).addClass(“.underline”);嗨,当我读到关于CSS的文章时,我也怀疑只有CSS。然而,我无法让它工作。我在原始帖子中添加了HTML,也许这可以澄清问题?@Skt是幻灯片中数据属性为true的按钮还是幻灯片之外的按钮?哦,你说得对!它在幻灯片之外,在“全局层”中,所以它在所有幻灯片上都可见。@Skt然后它就可以通过javascript完成了!我找到了另一个属性,并根据您的帮助解决了它:rs模块。整个幻灯片[data slideactive=“rs-1899”]。我的按钮{文本装饰:下划线!重要;}谢谢!
jQuery('#slide1[data-isactiveslide="true"]')("#slide1-btn").addClass('.underline');
rs-slide.menus[data-isactiveslide="true"] .button-class-name-here{
       text-decoration:underline!important;
}