可以使用ActiveX对象WScript.Shell,不过有安全提示<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<script language="javascript">
var ws = new ActiveXObject("WScript.Shell");
document.onkeydown = function(){
switch(event.keyCode){
case 37:
ws.sendKeys("+{TAB}");
break;
case 39:
ws.sendKeys("{TAB}");
break;
}
}
</script>
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<script language="javascript">
var ws = new ActiveXObject("WScript.Shell");
document.onkeydown = function(){
switch(event.keyCode){
case 37:
ws.sendKeys("+{TAB}");
break;
case 39:
ws.sendKeys("{TAB}");
break;
}
}
</script>
<script language="javascript">
function test(e)
{
if (e.keyCode==39)
{
e.keyCode=9;
}
if (e.keyCode==37)
{
//alert('left');
e.keyCode=(e.shiftKey & 9);
}
}
</script>
<html >
<body onkeydown="javascript:test(event);">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
</body>
</html>
<html>
<body>
<input type="text" >
<input type="text" >
<input type="text" >
<input type="text" >
<input type="text" >
<input type="text" disabled>
<input type="text" >
<input type="text" >
<input type="text" >
<input type="text" >
<input type="text" >
<input type="text" >
</body>
<script language="javascript">
function documentKeyDown(){
var SrcElement;
SrcElement = window.event.srcElement;
if(window.event.keyCode == 13 && SrcElement.type!="button" && SrcElement.type!="textarea" ){
//回车键替换Tab
window.event.keyCode = 9;
}else if(window.event.keyCode==37){
//左方向键
//window.event.keyCode=(e.shiftKey & 9);
backFocus(event.srcElement);
}else if(window.event.keyCode==39){
//右方向键
window.event.keyCode=9;
}
}
function backFocus(obj){
var i=obj.sourceIndex;
while(document.activeElement==obj&&obj.tagName!="BODY")document.all(i--).focus();
}
document.onkeydown=documentKeyDown;</script></html>
<div style="display:none">
<input type="text">
</div>
是否有一个属性或其他方式能判断某个HTML对象是否可以执行focus()方法
function backFocus(obj){
var i=obj.sourceIndex;
while(document.activeElement==obj&&obj.tagName!="BODY") {
try {
document.all(i--).focus();
}catch(e) {}
}
}
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> - http://www.never-online.net </title>
<meta http-equiv="ImageToolbar" content="no" />
<meta name="author" content="never-online, BlueDestiny"/>
<meta name="keywords" content="never modules, Mozilla CSS, C#, .net, Reference, BlueDestiny, never-online"/>
<meta name="description" content="javascript reference, c sharp artilces"/>
<meta name="creator.name" content="never-online, BlueDestiny" />
<style type="text/css" media="all" title="Default"> </style>
<script type="text/javascript">
//<![CDATA[
function tabDemo() {
var doc_all = document.getElementsByTagName("*");
var curtEl = event.srcElement;
var nKeycode = event.keyCode;
if (nKeycode==39) { doit(1); return; }
else if (nKeycode==37) { doit(-1); return; }
function doit(n) {
for (var i=0; i<doc_all.length; i++) {
if (curtEl==doc_all[i]) {
try {
var j = i+(n);
j>=doc_all.length?j=doc_all.length-1:j<0?j=0:"";
doc_all[j].focus();
} catch(ex) {
n>0?doit(n+1):doit(n-1);
break;
}
}
}
}
}
document.onkeydown=tabDemo;
//]]>
</script>
</head> <body id="www.never-online.net">
<input/>
<input disabled=true value='disabled'/>
<input/>
<input/>
<input/>
<textarea></textarea>
</body>
</html>