在Jquery中使用类和ID的条件

时间:2017-09-14 21:23:09

标签: javascript jquery css wordpress class

我对if语句有疑问。 我有一个包含4个菜单元素的页面,所有这些元素都有一个内容。所有这些元素都有一个固定的 ID ,它永远不会改变,它们都有类,活动菜单元素有其他类。因此,我想在有效时为其中两个元素添加一张图片,当 删除



enter image description here


任何人都可以帮助如果声明这个场合,我将非常感谢您的帮助和建议

谢谢! ;)

2 个答案:

答案 0 :(得分:1)

为此,您需要使用.hasClass()来检查该元素是否具有.active类。

var isActive = $(".someDiv").hasClass("active");

答案 1 :(得分:0)

如何研究并找到问题的答案?

1)检查元素是否有特定的类。

console.log($("#a").hasClass('a b c'));
console.log($("#a").hasClass('a b'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="a" class="a b"></div>

2)将图像添加到div。 (您可以设置css背景,或添加图片标签)

if ($("#a").hasClass('a b')) {
  $("#a").css({
    'background-image': 'url(https://www.gravatar.com/avatar/d26718c…?s=32&d=identicon&r=PG&f=1)'
  });
}
if ($("#c").hasClass('c')) {
  $("#c").append($('<img src="https://www.gravatar.com/avatar/d26718c…?s=32&d=identicon&r=PG&f=1" />'));
}
.a,
img {
  width: 32px;
  height: 32px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="a" class="a b"></div>
<br /><br />
<div id="c" class="c"></div>

3)虽然有很多div,但决定哪个菜单项应该添加图片标签。  *可以向菜单项添加一个属性,指示图像状态  *或使用菜单的类/ id ..etc

$(document).on('click', '.menu', function() {
  if ($(this).attr('shouldcontainimage') == 'true') {
    $(".contents").css({
      'background-image': 'url(https://www.gravatar.com/avatar/d26718c…?s=32&d=identicon&r=PG&f=1)'
    });
  } else {
    $(".contents").css({
      'background-image': ''
    });
  }
});
.contents {
  width: 32px;
  height: 32px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="a" class="menu a" shouldcontainimage="false">A</div>
<br />
<div id="b" class="menu b" shouldcontainimage="true">B</div>
<br />
<div id="c" class="menu c" shouldcontainimage="false">C</div>

<br />
<br />
<br />
<div class="contents"></div>