javascript - 如果 aria-expanded === true 添加类

标签 javascript jquery

如果 aria=expanded === true,我该如何切换类?我有以下标记:

html

<a id="{{content.static.productDetailsToggleId}}" class="collapsed pdp-accord-toggle" data-toggle="collapse" data-parent="#accordion" href="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">{{content.static.productDetailsText}}<img class="accordion-plus" src="{{meta.assetsPath}}img/plus79.png" alt="accordion content">
</a>

js

$(function () {
  if ($('pdp-accord-toggle').attr('aria-expanded') === true) {
    $(this).find(".accordion-plus").toggleClass("accordion-minus");
  }
})

编辑 - 更多信息

基本上我观察在 plus 图标和 minus 图标之间切换,替换 .accordion-class 中的 img content: url(another image);。这也是我的 CSS。

CSS

.accordion-plus {
  height: 1em;
  float: right;
  margin-right: 1em;
}

.accordion-minus {
  opacity: .5;
  content: url(../../assets/img/minus-1.png);
}

最佳答案

看起来您只是缺少选择器上的类前缀

  if ($('.pdp-accord-toggle').attr('aria-expanded') === "true") {
  }

它也返回一个字符串,所以用引号括起 true

关于javascript - 如果 aria-expanded === true 添加类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32399221/

相关文章:

javascript - 我可以在相同的 $ ('element.class' ) 的 change() 函数中运行一个 $ ('element.class' ).each() 函数吗?

javascript - 如何处理带有点 (.) 字符的 angularJS UI 路由器

javascript - jQuery 图像交换 if-else 语句不起作用

javascript - 有没有办法在访问者登陆我的页面之前找出访问者的先前 URL?

javascript - 语义-UI-React 转换

jQuery 获取父元素的 css 背景颜色值

javascript - 来自一系列 getJSON() 调用的合并结果对象

javascript - 填写下拉菜单和单选按钮选项以继续访问正确的网址

javascript - JavaScript 中的数字被视为字符吗?

javascript - 渲染模板时的 Chain Promise