2010-01-11 134 views
1

我使用MooTools,并且我需要找到同时具有类“a”和“b”(下面的示例中的最内层div)的元素。Mootools - 根据类别选择DOM元素

的HTML结构是:

<div class="a"> 
    <div class="otherclass"> 
     <div class="b"></div> 
    </div> 
</div> 

在jQuery中这是$( “DIV .A .B”),据我所知。什么是mootools语法?我试过

$$("div .a .b") 

但它不返回任何结果。

谢谢!

- 要清楚的事情,我只想得到有两个类(在这种情况下,只有一个)的div。谢谢。

回答

1
var divsB = $$("div.a div.b"); 

http://mootools.net/shell/jfnWK/ - 选择第一个,但不是第二个,因为它不是一个div.a的孩子

+0

非常感谢这款出色的工具。 你给出的表达式给出了错误的输出:结果是1 2,这意味着我也得到只有“b”类的div,并且我只想得到既有“a”也有“ b”。 – Nir 2010-01-11 13:04:25

+0

你真的应该看看Firefox /无论浏览器控制台 - 它只会返回第一个实例。你会看到1 2作为html的插图 - 这不是选择器返回的内容。 你的原始选择器是错误的 - 你调用任何具有任何子类元素“a”的任何div元素,它具有任何子类元素“b” - 所以它是一个3级选择器,在mootools中将是相同的 - > div - > a - > b,而不是div.a - > div.b,它与您的标记匹配。 – 2010-01-11 14:01:57

+2

jsfiddle链接错误或死亡。 – 2014-01-23 18:43:18

1

什么

$$('div.a div.b') 

$$("div.a").getElements("div.b"); 
+0

我觉得' div.a div.b'给出了太广泛的结果(不仅意味着同时拥有“a”和“b”类的div,而且仅具有“b”或仅“a”的那些div)。 关于第二种方法,是不是有一种类似css的方式来定义选择器? 谢谢。 – Nir 2010-01-11 13:12:22