问题标签 [selectors-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
583 浏览

jquery - 嘶嘶声和/或 querySelectorAll - 嵌套元素的枚举顺序?

如果我有一组嵌套的 DOM 元素,例如ul > li > ul > li,我自己使用选择器li,是 Sizzle 还是document.querySelectorAll定义元素返回的顺序?

可能返回的顺序包括“最先”、“叶节点在前”或“按文档顺序”,但我从未见过任何写下来指定哪个顺序。

0 投票
1 回答
33680 浏览

javascript - .parents() 没有 jquery - 或 querySelectorAll 为父母

可能重复:
使用matchesSelector js检查event.target.parentElement

我有一个 dom 对象,我想匹配它的父母,所有父母,反对一个选择器,比如querySelectAll(),但对于父母而不是孩子。类似于 jQuery 的.parents('selector')方法,但我不需要任何向后兼容性。另外,请不要图书馆。我将 totes 取一个布尔返回值。

我可以自己将其编写为递归函数/for/while 使用matchesSelector(). 我正在寻找鲜为人知的方法或更高效的代码。

节省任何处理都是值得的。想想数以万计的匹配检查,甚至更多。

0 投票
1 回答
6152 浏览

javascript - querySelectorAll 无效语法

尝试在错误控制台中执行这两个代码块:

第一。输出节点列表。

第二个。产生错误。

为什么data-type=day语法是好的而data-day=23不是?属性值是否应该始终包装为data-type='day'

这是例外情况,在第二种情况下会引发:

[异常...“指定了无效或非法的字符串”代码:“12”nsresult:“0x8053000c(SyntaxError)”]

0 投票
3 回答
71009 浏览

javascript - 如何删除使用 querySelectorAll 获取的元素?

这似乎可以快速回答,但我找不到。也许我在搜索错误的术语?请不要使用库,尽管我不需要跨浏览器后备,但我的目标是该项目的所有最新版本。

我得到了一些元素:

这是有效的,但我现在如何删除这些元素?我是否必须遍历它们并执行此操作element.parentNode.removeChild(element);,还是缺少一个简单的功能?

0 投票
3 回答
13353 浏览

javascript - IE9 等效于 querySelectorAll

我在 FF 或 Chrome 中没有遇到任何问题,但是 IE9 在这种方法上会出错。我认为我可以使用它,因为它已被证明在这里得到支持:

http://www.quirksmode.org/dom/w3c_core.html

然而,在实践中似乎并非如此。话虽如此,我可以用什么代替它?

编辑:这是它失败的确切行:

那是我第一次尝试使用 querySelectorAll()。浏览器版本号为 9.0.8112.16421

编辑(再次):我已经在两台不同的计算机上验证了这个错误。然而,他们有一个共同点——他们都在 VMware 上运行 Windows 7。这有关系吗?

浏览器模式是 IE9,但文档模式默认设置为 quirks。将其更改为 Internet Explorer 9 标准解决了该问题,但如果怪癖是默认设置,我仍然需要让它工作。

0 投票
6 回答
32875 浏览

javascript - Firefox,查询选择器和可见的伪选择器

无论如何使用带有 Firefox 的 querySelector() 或 querySelectorAll() 函数的伪选择器来检测可见性?特别是我希望能够做这样的事情:

无需担心浏览器不一致或其他实现,只需 Firefox。谢谢!

编辑: Visible 由display not nonevisibility not being hidden定义。

0 投票
1 回答
193 浏览

javascript - 为什么 querySelectorAll 在 jsPerf 上使用 data-xyz 工作,但在我的代码中却不行?

我在玩jsperf,querySelectorAlldata-xyz属性。

这是我当前的 jsperf:jqmData 与属性选择器

关键部分在js测试中:

请注意,我没有使用任何方括号 [],它仍然可以正常运行,并且比所有其他选择器都好。我将它提高到一个页面上的 200 多个数据角色元素,它仍然运行得更快。

然后我在这里尝试了我自己的测试页面(参见 Firebug),唉......当我省略方括号时,nodeList 是空的。

问题:
jsperf 使用了什么魔法,所以选择器在那里工作,而不是在我的虚拟网站上工作。

0 投票
1 回答
3823 浏览

javascript - 如何在 css/js 属性选择器 [attr=value] 中正确转义属性值?

我应该如何转义 css/js 属性选择器中的属性[attr=value]

具体来说,这是正确的吗?

我正在寻找执行此操作的“标准方式”(如果有),因为我不希望 Sizzle 使用执行繁重的后备功能

0 投票
1 回答
501 浏览

javascript - 使用 querySelectorAll 为新创建的元素创建一个循环

我想要做的是使用该querySelectorAll()函数创建一个循环,我可以在其中定位我使用我<li/>创建的函数创建的每个新元素getInput()(效果很好)。我想用它console.log()来测试它,这样当我点击每个<li/>项目时,它会确认我已经在控制台中这样做了。这种querySelectorAll()方法对我来说是新的,而且我在学习 Javascript 方面也很陌生。因此,任何建议和解释都会非常有帮助。谢谢。

0 投票
1 回答
924 浏览

javascript - 在斜杠之间使用 querySelector

这里有一个例子:

我希望我querySelector只选择“宝马”。

我使用它(如下),但它只选择句子的结尾,而不是“/car/”和“?load”之间的值

谢谢你的帮助 !