属性名称模式的JavaScript / CSS选择器

时间:2014-04-18 21:59:33

标签: javascript css css-selectors

假设我有以下标记

<div data-common-notcommon="anyValue">
    <!-- Whatever.. -->
</div>

<div data-common-not-commonerthing="anyValue">
    <!-- Whatever.. -->
</div>

我正在尝试编写一个JS选择器(或一个CSS选择器,不关心差异......)来根据一个常见的部分属性名称来查找属性。

I.E我想找到以data-common开头的所有元素。

我在Google上找不到属性名称选择器的任何内容,而是我不想做的属性值选择器。

<script>
  document.querySelectorAll('[data-common]'); // []
  document.querySelectorAll('[data-common*]'); // []
  // etc..
</script>

1 个答案:

答案 0 :(得分:1)

目前没有定义选择器来部分匹配属性名称。你要求的东西不存在。

对于JavaScript,您可以使用自定义代码(这是jQuery所做的)过滤元素集合,但它不适用于document.querySelectorAll,也不能为CSS定义自定义选择器,除非您愿意在w3c邮件列表上建议它并处理导航改变CSS语言所涉及的复杂工作流程。