Javascript 使用原型选择按钮时出现异常

Javascript 使用原型选择按钮时出现异常,javascript,prototypejs,Javascript,Prototypejs,我的html标题有: <meta http-equiv="X-UA-Compatible" content="IE=7" > 在除IE9、10之外的所有浏览器中,它都能完美工作。 在IE9,10中,第一次调用函数是可以的,但下一次调用失败,因为$$返回“undefined”,调用show()会破坏代码 更新项目中包含原型1.6.0.2。对此有两个修复-第一个是直接修复 $$('#score-window .buttons').invoke('show'); 这将迭代与CSS选择器

我的html标题有:

<meta http-equiv="X-UA-Compatible" content="IE=7" >
在除IE9、10之外的所有浏览器中,它都能完美工作。 在IE9,10中,第一次调用函数是可以的,但下一次调用失败,因为$$返回“undefined”,调用show()会破坏代码


更新项目中包含原型1.6.0.2。

对此有两个修复-第一个是直接修复

$$('#score-window .buttons').invoke('show');
这将迭代与CSS选择器匹配的所有元素,并对其运行
show()

仅当在
#评分窗口中只有一个元素具有类
按钮时才使用此选项

这将起作用,并且不会抛出错误,就像没有与选择器匹配的元素一样,它不会激发
invoke()

第二个修复方法是检查元素是否存在,然后显示它

if($$('#score-window .buttons').length > 0) {
    $$("#score-window .buttons")[0].show();
}

这些修复将直接修复错误-但是我认为您有一个不同的核心问题,您需要深入了解CSS选择器第二次找不到元素的原因。另外,如果您能够升级到PrototypeJS 1.7.1。

非常感谢。我刚刚迁移到1.7,问题消失了。
if($$('#score-window .buttons').length > 0) {
    $$("#score-window .buttons")[0].show();
}