多个带有原型的 CSS 选择器
Multiple CSS Selectors with Prototype
我正在重构一些目前看起来像这样的代码:
$$('#wrapper > div').each(function(e){
if((e.id!='header') && (e.id!='footer') && (e.id!='content')){
// various other stuff here
}
});
我想将初始选择器切换并检查 ID 到一行,大致如下:
$$('#wrapper > div[id!=header]', '#wrapper > div[id!=content]', '#wrapper > div[id!=footer]')
多个选择器不起作用,每个选择器本身工作正常。不确定这是否是语法问题,或者原型文档所说的应该有效,但是一旦我添加了额外的选择器,就没有工作了。
要确认此操作是否有效:
$$('#wrapper > div[id!=header]')
这有效:
$$('#wrapper > div[id!=footer]')
但这无法选择任何一个(不抛出错误)
$$('#wrapper > div[id!=header]', '#wrapper > div[id!=footer]')
这两个代码片段做完全不同的事情。与顶部代码段等效的应该是这样的:
$$('#wrapper > div[id!=header][id!=footer][id!=content]')
您的选择器将选择所有具有id
的div,因为那些"footer
"的div将在"不header
"下选择。
您可以将选择器相互追加div[attr selector 1][attr selector 2]
请参阅以下示例小提琴。
您最初尝试的问题。 即使用逗号分隔选择器,是它们OR
-ing。 因此,即使您指定了所有三个,其他每个都将返回其他尝试排除的内容。
相关文章:
- 为什么不'在JQuery中找到第二个css选择器的工作
- 使用javascript和css选择器获取value属性的内容
- casperjs-css选择器存在,但当单击它时会引发“”;CasperError:无法在不存在的选择器“”上调度mou
- CSS选择器与And操作组合'&&'
- 类选择不起作用的 css 选择器
- 如何使用javascript获取元素的css选择器
- 我们可以使用jquery删除css选择器吗
- CasperJS可以't使用CSS选择器或xPath查找元素
- While为List值在CSS选择器中循环迭代
- CSS选择器在Angular单元测试w/karma&柴
- casperJS CSS 选择器:waitFor 函数总是超时
- 选择一个 CSS 选择器来动态设置元素的样式 ::before
- 是否有根据特异性对 CSS 选择器文本进行排序的 JS 库
- CSS选择器代码,用于从棘手的网站抓取/解析数据
- CSS 选择器不起作用
- 当我们使用 CSS 选择器时,浏览器如何找到集合元素
- CSS 选择器从右到左进行评估.querySelectorAll() 选择器也会以这种方式进行评估吗?
- 为什么 CSS 选择器只设置第一个匹配 svg 路径的样式
- 如何在 SVGjs 上使用 css 选择器
- 将变量作为 JQuery CSS 选择器传递不起作用