微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 如何使用jquery检查多个元素是否具有相同的类?

是否可以缩小此选择器?
if ($("#element1").hasClass("highlight") && $("#element2").hasClass("highlight") && $("#element3").hasClass("highlight") && $("#element4").hasClass("highlight") && $("#element5").hasClass("highlight")) {
  $("#newstyle).css("visibility","visible");
};

我已经试过了

if ($("#element1,#element2,#element3,#element4,#element5").hasClass("highlight"))

if ($("#element1 && #element2 && #element3 && #element4 && #element5").hasClass("highlight"))

……但这是不正确的.

基本上我有很多相同的条件:5个指定元素hasClass XYZ.所以我很感激压缩它.

解决方法

你走在正确的轨道上.我应该注意到,我假设模式element1,element2,element3并不是你的ID,你刚刚在问题中使用了它…

我可能会把它转过头来:使用一组带有#element:not(.highlight)的选择器,如果结果是空的(长度== 0),它们都有它或者不存在.

if (!$("#element1:not(.highlight),#element2:not(.highlight),#element3:not(.highlight),#element4:not(.highlight),#element5:not(.highlight)").length) {

  $("#newstyle").css("visibility","visible");

}

他们都有类的例子:

if (!$("#element1:not(.highlight),"visible");

}
<div id="element1" class="highlight"></div>
<div id="element2" class="highlight"></div>
<div id="element3" class="highlight"></div>
<div id="element4" class="highlight"></div>
<div id="element5" class="highlight"></div>
<div id="newstyle" style="visibility: hidden">I'm visible!</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

而且其中至少有一个没有:

他们都有类的例子:

if (!$("#element1:not(.highlight),"visible");

}
<div id="element1" class="highlight"></div>
<div id="element2" class="highlight"></div>
<div id="element3"></div>
<div id="element4" class="highlight"></div>
<div id="element5" class="highlight"></div>
<div id="newstyle" style="visibility: hidden">I'm visible!</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

如果它是所有相同的类,如在您的示例中,我们可以更简洁:

if (!$("#element1,#element5").not(".highlight").length) {

  $("#newstyle").css("visibility","visible");

}

他们都有类的例子:

if (!$("#element1,"visible");

}
<div id="element1" class="highlight"></div>
<div id="element2" class="highlight"></div>
<div id="element3" class="highlight"></div>
<div id="element4" class="highlight"></div>
<div id="element5" class="highlight"></div>
<div id="newstyle" style="visibility: hidden">I'm visible!</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

并且至少有一个不是:

if (!$("#element1,"visible");

}
<div id="element1" class="highlight"></div>
<div id="element2" class="highlight"></div>
<div id="element3"></div>
<div id="element4" class="highlight"></div>
<div id="element5" class="highlight"></div>
<div id="newstyle" style="visibility: hidden">I'm visible!</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


jQuery表单验证提交:前台验证一(图文+视频)
jQuery表单验证提交:前台验证二(图文+视频)
jQuery如何实时监听获取input输入框的值
JQuery怎么判断元素是否存在
jQuery如何实现定时重定向
jquery如何获取复选框选中的值
jQuery如何清空form表单数据
jQuery怎么删除元素节点
JQuery怎么循环输出数组元素
jquery怎么实现点击刷新当前页面