我在我的网站上使用了一些热键,网站仅在Chrome和Firefox中进行了测试,一切都没问题,但是当我在Opera中测试网站时发现我的很多热键都没有用,代码检查后发现我的功能
$(document).bind('keyup', function(e){
//....
});
当我尝试将其更改为时,Opera会忽略
$(document).bind('keypress', function(e){
//....
});
它在Opera中正常运行,但被Chrome忽略。有没有跨浏览器的出路?我也在使用jquery 1.5.1。
将function(e)
更改为function (event)
后,更新。仅显示为arrown和esc。按钮仍无法正常工作
答案 0 :(得分:0)
而不是使用它:
$(document).bind('keyup', function(e){
//....
});
请参阅演示:http://jsfiddle.net/rathoreahsan/cxV8D/1/
尝试使用:
$(document).bind('keyup', function(event){
//....
});
答案 1 :(得分:0)
旧版浏览器中的keyup
也存在类似问题。
尝试使用keydown
代替keypress
或keyup
。
Opera(Chromium版本)中的特殊/控制键似乎只有keydown
触发。
另一个问题是输入中的 Esc 会触发blur
而非keyup
,因此您必须再次绑定到keydown
。