我试图抑制Firefox对<select multiple="multiple">
框的解释中的正常键盘事件,但我惯用的方法不起作用。 YUI的stopEvent似乎并没有真正抑制按键或击键(或两者)的影响。
keyPressHandler =函数(e){
YUE.stopEvent(e);
};
YAHOO.util.Event.addListener(element,'keypress',keyPressHandler)
YAHOO.util.Event.addListener(element,'keydown',keyPressHandler)
假设元素是一个选择框,则键盘仍可用于在Firefox中导航该选择框,但是在Chrome中则不可用。关于如何正确抑制Firefox中的键盘事件的任何想法?
我通常不会超越YUI的范围,但如果有其他解决方案,我会欢迎您。
最佳答案
尝试这个:
var keyPressHandler = function(e){
e.preventDefault(); // prevents any default actions of the browser
e.stopPropagation(); // prevents the event mechanism from bubbling
return false; // If there is any condition on the return value, assure it fails
};
element.addEventListener('keydown',keyPressHandler,false);