首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Jquery选择器:针对具有两个类前缀的元素

Jquery选择器:针对具有两个类前缀的元素
EN

Stack Overflow用户
提问于 2015-04-09 10:53:25
回答 3查看 1.2K关注 0票数 0

我有一些元素,在相同的元素中包含两个类似的类,如“col-md-3col-md-6”,我想用一个jQuery选择器来标识它们。

示例:

代码语言:javascript
运行
复制
<div class="col-md-3 col-md-6"></div

如何只选择包含这两个类的元素?

我试过这样的方法:

代码语言:javascript
运行
复制
$("[class*='col-md-'][class*='col-md-']").css("background", "#07BCCD")

但是是针对所有具有一个或两个类前缀"col-md-"“的元素。

小提琴js:

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-04-09 11:07:58

没有选择器可以进行这种模式匹配。您需要匹配其中一个类,然后使用.filter()测试它是否至少有两个匹配的类。

代码语言:javascript
运行
复制
$("[class^=col-md-]").filter(function() {
  return this.className.split(' ').filter(function(e) {
    return e.indexOf('col-md-') == 0;
  }).length >= 2;
}).css("background-color", "#07BCCD");
代码语言:javascript
运行
复制
div {
  height: 50px;
  width: 50px;
  background-color: red;
}
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="col-md-3 col-md-6"></div>
<div class="col-md-3"></div>

票数 1
EN

Stack Overflow用户

发布于 2015-04-09 10:55:55

将两个类放在一起,没有空间:

代码语言:javascript
运行
复制
$(".col-md-3.col-md-6").css("background", "#07BCCD");

更新:您可以使用过滤器

代码语言:javascript
运行
复制
var prefix = $("[class*='col-md-']").filter("[class*=' col-md-']").css("background", "#07BCCD");

小提琴

票数 2
EN

Stack Overflow用户

发布于 2015-04-09 11:14:50

使用.filter()和下面的逻辑计算两个事件,

代码语言:javascript
运行
复制
var prefix = $(".row div").filter(function () {
    return ($(this).attr('class').split('col-md-')).length > 2;
}).css("background", "#07BCCD");

小提琴

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29536514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档