Internet explorer 防止PrototypeJS事件处理程序中的bell/ding

Internet explorer 防止PrototypeJS事件处理程序中的bell/ding,internet-explorer,prototypejs,dom-events,Internet Explorer,Prototypejs,Dom Events,我如何翻译以下内容以使用PrototypeJS Event.observe 其目的是防止在某些情况下不应播放的叮当声(在IE9中)。使用Prototype的事件素材,您所引用的内容如下所示: var input = /* ...get the `input` element, how will depend on your structure... */; input.observe('keypress', function(event) { if (event.keyCode ==

我如何翻译以下内容以使用PrototypeJS Event.observe


其目的是防止在某些情况下不应播放的叮当声(在IE9中)。

使用Prototype的事件素材,您所引用的内容如下所示:

var input = /* ...get the `input` element, how will depend on your structure... */;
input.observe('keypress', function(event) {
    if (event.keyCode == 13) {
        event.stop();
    }
});
做两件事:它阻止默认操作(如果有的话),并停止事件冒泡。如果您只想阻止默认操作但不冒泡,请改用(Prototype将确保它在那里,即使在关闭它的浏览器上);如果您只想停止冒泡,但不想阻止默认操作,请改用(同样,Prototype将确保它在那里)


就查找
输入
元素而言:如果它有
id
,这很容易:

var input = $('theId');

或者,您可以通过它所在的位置或它的其他属性来查找它,使用,它提供了相当强大的选择器(大多数CSS3)。

当处理程序在按enter键时启动时,IE9仍然会启动dings@c0dem4gnetic字体恐怕我不知道你的意思。上面回答了如何使用原型编写引用代码的问题。它是否做了您希望它做的事情完全是另一个问题。:-)注意到原型1.6+IE9存在问题。升级到1.7并按照您的答案处理事件,效果非常好。