【发布时间】:2013-02-13 18:36:22
【问题描述】:
浏览器必须是 firefox
Mootools 版本必须为 1.2.x
- $$ 选择器返回太多元素仅在 Firefox 中
HTML
<div class="only_trucks diagramz" id="diatruck">
<div class="lf">lf</div>
<div class="rf">rf</div>
<div class="la">la</div>
<div class="ra">ra</div>
<div class="lrfo">lrfo</div>
<div class="rrfo">rrfo</div>
<div class="lrfi">lrfi</div>
<div class="rrfi">rrfi</div>
<div class="lrro">lrro</div>
<div class="rrro">rrro</div>
<div class="lrri">lrri</div>
<div class="rrri">rrri</div>
</div>
JS
selected = $$('.rf');
alert(selected.length);
console.log(selected);
这应该只返回 1 个结果,但返回多个结果。它似乎与其中包含“rf”的其他类相匹配。
除了更新到最新版本的 mootools 或更改类名之外,有没有人可以解决这个问题?
【问题讨论】:
-
奇怪,即使是文字形式
$$('div[class=rf]')也有这种行为 -
好问题。该应用程序在 JS 中很重,我不希望因为一个简单的更新而破坏其他任何东西。
-
我最终可能只是制作这些 id,因为它们并没有在其他地方使用。
-
哇,这是一个棘手的错误!即使这样也行不通:
$$('.rf').filter(function (item) { return item.hasClass('rf');});