2013-01-10 23 views
6

在这里工作的jsfiddle例如:http://jsfiddle.net/CfJyd/火狐18的mootools休息1.2.5选择器引擎

该问题仅出现在Firefox 18,我知道的。

下面的HTML:

<div class="test">Test Div</div> 
<div class="testIgnore">This should stay the same</div> 

随着这个js:在该输出

window.addEvent('domready',function() { 
    $$('.test').set('html','Only Test should update'); 
}); 

结果:

Only Test should update 
Only Test should update 

升级到Mootools的1.4.5不是在一个选项因为有很多使用1.2.5的插件,任何人都可以指出我在正确的方向获得解决方案吗?

+0

你应该米作为您接受的答案,请您自己的主人! – Jaap

回答

8

,我发现这里的答案:https://groups.google.com/forum/#!msg/mootools-users/W7MHwTFHYQ4/B4HcR951XQYJ

的任意位置添加以下代码在JavaScript - 我说这只是上面mootools的,它完美的作品:本

String.prototype.contains = function(string, separator){ 
    return (separator) ? (separator + this + separator).indexOf(separator + string + separator) > -1 : String(this).indexOf(string) > -1; 
}; 
+0

现在可以使用mootools 1.2.6,它也解决了这个问题 –

4

已知错误。如果我没有记错,这是与早期推出的做提出 ES和谐String.prototype.contains的壁虎,它在1.2.5

一个快速的解决方法就是做一个不同的2-ND参数之一, delete Sting.prototype.contains,然后加载MooTools,重新定义它。从1.3开始,这已经停止成为受保护的原型方法,并且已被适当地重新定义。我认为有可能是通过Firefox的球员之一,大约6个月前回购提出,因为它是迫切降落在FF 17的错误...

看到这个:https://bugzilla.mozilla.org/show_bug.cgi?id=789036#c23

即使布兰登·艾克是在评论并建议它可能在18.0.1中被禁用,因为它被过早采用。