在 http://jsfiddle.net/mhenrixon/zPLgS/16/ 上添加以下 javascript 片段它在常规浏览器中工作正常,但我无法使其在需要工作的 Windows CE 6.0 的 IE Mobile 中工作。有人知道如何解决这个问题吗?
function tab(field, event) {
if (event.which == 13 /* IE9/Firefox/Chrome/Opera/Safari */ || event.keyCode == 13 /* IE8 and earlier */ ) {
for (i = 0; i < field.form.elements.length; i++) {
if (field.form.elements[i].tabIndex == field.tabIndex + 1) {
field.form.elements[i].focus();
if (field.form.elements[i].type == "text") {
field.form.elements[i].select();
break;
}
}
}
return false;
}
return true;
}
最佳答案
如果您只是将 event.which
或 event.keyCode
从 ENTER
更改为 TAB
会怎样? ,并让默认行为通过?像这样的东西:
function tab(event) {
if (event.which && event.which == 13)
event.which = 9;
else if (event.keyCode && event.keyCode == 13)
event.keyCode = 9;
}
不确定 Windows Mobile 的按键代码是否不同,但要弄清楚您需要做的就是 alert(event.which);
或 alert(event.keyCode) ;
.
关于javascript - Windows Mobile 中将 Enter 转换为 Tab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9571513/