Javascript 如何比较两个CSS选择器?

Javascript 如何比较两个CSS选择器?,javascript,css,Javascript,Css,如何比较Javascript上的两个CSS选择器 例如: compare('.foo.bar', '.bar.foo') 返回true compare('.foo.bar', '.foo .bar') 返回false '.foo.bar' is not the same as '.foo .bar' 注意'.foo.bar' 例如: 此功能的用例是什么,您想解决什么问题?当你试着自己写这个的时候,你走了多远?我试着用正则表达式。这似乎很难。然后,我想创建两个虚拟元素,使用两个非常简单的

如何比较Javascript上的两个CSS选择器

例如:

compare('.foo.bar', '.bar.foo')
返回
true

compare('.foo.bar', '.foo .bar')
返回
false

 '.foo.bar' is not the same as '.foo .bar'
注意
'.foo.bar'

例如:



此功能的用例是什么,您想解决什么问题?当你试着自己写这个的时候,你走了多远?我试着用正则表达式。这似乎很难。然后,我想创建两个虚拟元素,使用两个非常简单的样式规则,然后比较规则,您的示例对我来说很有意义-看起来一切都是有序的。你明白空间的不同吗?这对我来说没有多大意义。您正在尝试创建此
compare
方法吗?如果是,您想知道特定元素是否与这些选择器匹配吗?或者它们是否完全相同?一个元素甚至可以有
foo.bar
有它的
class
属性,但是选择器必须是
.foo\.bar
,是否也要分析它?用例是什么?有人想结束这个问题,因为它太宽泛了。世界跆拳道联盟!?这个问题没有jQuery标签。你说得对,David,我很想看到一个普通的JS解决方案,请发布它!香草
is(cssSelector)
is
元素。匹配(cssSelector)
。。。但是,因为我不明白问题是什么,所以这不会是一个答案。Ps:这不会比较两个选择器,但只要一个元素与两个选择器匹配:
<div class="foo"><p class="bar"></p></div>  The tag P matches '.foo .bar'

<div class="foo bar"><p class="bar"></p></div>  The tag DIV matches '.foo.bar'