首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >多个上下文的jquery相同选择器

多个上下文的jquery相同选择器
EN

Stack Overflow用户
提问于 2012-05-02 05:21:37
回答 3查看 1.4K关注 0票数 0

我想写一个优雅的解决方案,通过在不同的上下文列表中搜索来选择相同的标签

代码语言:javascript
运行
复制
//i have this not editable code
var c1$ = $('#context1'),
    c2$ = $('#context2'),
    c3$ = $('#context3');

//I want to improve the code and 'only from here on
var selector = 'a.select';
c1$.find(selector).css('color','red');
c3$.find(selector).css('color','red');

我正在为任意数量的上下文寻找解决方案

EN

回答 3

Stack Overflow用户

发布于 2012-05-02 05:35:13

您可以使用$.add()构建上下文,然后将其用作选择器的context参数中的单个jQuery对象:

代码语言:javascript
运行
复制
var $foo = $("#foo"),
    $bar = $("#bar");

var $context = $foo.add($bar);

$("a.select", $context).css("color", "red");
票数 8
EN

Stack Overflow用户

发布于 2012-05-02 07:15:57

为什么不加载一个上下文列表,然后执行foreach来查找每个上下文中的“a.select”?

票数 0
EN

Stack Overflow用户

发布于 2012-05-03 07:43:13

我的绝望而不优雅的解决方案

代码语言:javascript
运行
复制
var contexts = [$('#context1'),$('#context2'),$('#context3')];
//list of contexts in single variable(arbitrary number!)

var selector = 'a.select';
//same selector for all variable contexts

var cons$ = $([]);
//empty temporary selector

for(i in contexts)
    cons$ = cons$.add(contexts[i]);

var allmatches$ = cons$.find(selector);

//here processing allmatches$

allmatches$.css("color", "red"); 
//now apply css in one step
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10404539

复制
相关文章

相似问题

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