You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

document.querySelector()能否按属性选元素?属性为何加方括号?

关于document.querySelector系列方法使用属性选择器的疑问解答

当然可以!document.querySelector()和document.querySelectorAll()完全支持使用属性选择器作为参数来定位DOM元素,你给出的代码就是一个标准且常用的示例。

之所以要用方括号[]包裹属性名,是因为这是CSS选择器的标准语法规则——属性选择器就是通过方括号来声明的,用来匹配DOM中带有指定属性的元素,无论该属性的具体值是什么。

比如你代码里的[data-tab-value],会匹配所有带有data-tab-value属性的元素,示例中的<span data-tab-value="#tab_1">Tab-1</span>就会被这个选择器选中。

除了这种匹配“存在该属性”的写法,属性选择器还有几种常见变体:

  • 精确匹配属性值:[data-tab-value="#tab_1"],只会选中属性值恰好是#tab_1的元素
  • 包含指定字符串:[data-tab-value*="tab"],选中属性值里包含tab的元素
  • 以指定字符串开头:[data-tab-value^="#tab"],选中属性值以#tab开头的元素

内容的提问来源于stack exchange,提问作者kirilinko

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 19:45:36