使用西里尔布局时的onkeyup没有在Opera射击
-
20-09-2019 - |
题
我挣扎理解为什么下面的问题出现。
我有一个输入框,并欲一个自动填充框附加到它。
function input_set_autocomplete_to(obj)
{
if( obj.type != "text" ) { return; }
if( obj.getAttribute("rel") != "autocomplete" ) { return; }
obj.setAttribute("autocomplete", "off");
obj.setAttribute("uniqindex", Math.round(Math.random()*99999));
obj.onfocus = function() {
input_hide_autocompletes();
};
这是函数的开始。这里没有麻烦。然后我钩onKeyDown和的onkeyup事件,以便我可以显示框而用户键入。
obj.onkeydown = function(e) {
console.log('x');
}
obj.onkeyup = function (e) {
console.log('z');
}
到目前为止好。一切都在每一个浏览器(IE,FF,Chrome浏览器,Safari浏览器),在Windows和Linux下正常工作,我得到的X,Z上的每个按键,除了歌剧在Linux中,如果我使用西里尔字母输入(例如сдфг)。有onkeyup事件不会甚至引起火灾。
我使用的系统是Ubuntu 9.04的使用Opera 10.10。
P.S。同时键入这个问题我在Opera 10.10尝试过与ArchLinux的另一台机器上,再次和它的正常工作。 另外一个同事下降了注意,它不工作对他来说太在MacOS X 10.6与Safari浏览器,但我不能与他联系,以确定该版本
解决方案
根据怪异模式,歌剧KEYUP处理被打破。您需要在Opera使用按键来代替。
不隶属于 StackOverflow