2014-04-18 31 views
1

假设我有以下标记的JavaScript/CSS选择器的属性名称模式

<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> 
+0

不知道但[数据通用*]可以工作吗? –

+0

它没有,我试过了,它给了我一个无效的选择器错误。 –

+0

看看这个http://stackoverflow.com/questions/12199008/find-html-based-on-partial-attribute。我认为这是你正在寻找的。 –

回答

1

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

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

+0

完美,谢谢。我只是需要澄清。如果这项技术到达,我会更新帖子。 –

相关问题