如何将以下内容翻译成PrototypeJS Event.observe?
<input type="text" .... onkeypress="if(event.keyCode==13)return false;">
目的是防止在某些情况下不应播放的声音(在IE9中)。
答案 0 :(得分:1)
你引用的内容看起来像使用Prototype的事件:
var input = /* ...get the `input` element, how will depend on your structure... */;
input.observe('keypress', function(event) {
if (event.keyCode == 13) {
event.stop();
}
});
Event#stop
执行两项操作:它会阻止默认操作(如果有),并且会停止事件冒泡。如果您只是想阻止默认操作但不想冒泡,请使用Event#preventDefault
代替(Prototype将确保它在那里,即使是在离开它的浏览器上);如果你只想停止冒泡而不是阻止默认操作,请改用Event#stopPropagation
(同样,Prototype会确保它在那里)。
在查找input
元素方面:如果它有id
,那很容易:
var input = $('theId');
或者,您可以使用$$
找到它所在的位置或其他属性,它提供了相当强大的选择器(大多数CSS3)。