Javascript 能否按上下文筛选现有jquery对象?
我在jquery对象中缓存了一些元素。我现在想根据上下文过滤它们。我可以这样做,还是需要在使用第二个上下文参数的同时使用选择器创建另一个jquery对象 下面是一个例子:Javascript 能否按上下文筛选现有jquery对象?,javascript,jquery,Javascript,Jquery,我在jquery对象中缓存了一些元素。我现在想根据上下文过滤它们。我可以这样做,还是需要在使用第二个上下文参数的同时使用选择器创建另一个jquery对象 下面是一个例子: var cached = $('.elements'); 稍后,我想按上下文筛选此数组,而不创建另一个选择器。如果我只是创建另一个选择器来执行我想要的操作,它将如下所示: //in event listener var parent = $(this).closest('.parent'); $('.elements', p
var cached = $('.elements');
稍后,我想按上下文筛选此数组,而不创建另一个选择器。如果我只是创建另一个选择器来执行我想要的操作,它将如下所示:
//in event listener
var parent = $(this).closest('.parent');
$('.elements', parent).removeClass('class');
我不完全理解您的请求,如果我没有弄错,您可以使用
。not
()
a1
a2
b3
b4
var all=$('span');
all.css(“背景”、“F99”);
全部=全部。不是(“.a”);//删除类“a”元素
css(“背景”,“#9F9”);
“我可以这样做吗?”我会说可以,但你的问题不清楚。请提供一个例子,你能在这里粘贴你的代码吗?这可能很有趣——pebbl建议的线程很有用。
<span class="a">a1</span>
<span class="a">a2</span>
<span class="b">b3</span>
<span class="b">b4</span>
<script>
var all = $('span');
all.css("background", "#F99");
all = all.not(".a"); // remove class 'a' element
all.css("background", "#9F9");
</script>