求一个用tab键来控制切换各个标签的焦点 求一个用tab键来控制切换各个标签的焦点(比如输入框),不只是输入框,也可以是不同div之间的,也可以是div和输入框之间的,就是各个标签之间都可以切换焦点(光标所在位置),最好有代码,谢谢大家! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 呵呵,div也要,有点复杂。这个和html定义规范有关 function Move(e,Event){ var id = e.id; if(Event.keycode == 37) //左 39右 38上 40 下 { document.getElementById(id.replace("开始Id","移动后的Id")).select(); }} 调用控件设置onkeyup事件 onkeyup="Move(this,event)" 只有input输入框切换也行,谢谢 <html><head><title></title><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/><style type="text/css">div{width:20px;height:20px;border:1px solid red;margin-bottom:10px;}</style><script>function tabGoHome(){ document.getElementById("firstSelectd").focus();}function stopEvent(e){ if(e.stopPropagation) { e.stopPropagation(); } else { e.cancelBubble=true; } if(e.preventDefault) { e.preventDefault(); } else { e.returnValue=false; }}function check(e){ e = e || window.event; target = e.srcElement||e.target; keyCode = e.keyCode; if(9 == keyCode) { if("lastSelectd" == target.id) { stopEvent(e); tabGoHome(); } }}</script></HEAD><BODY onload = "tabGoHome()" onkeydown = "check(event)" ><div id="firstSelectd" tabindex = "1">1</div><!-- 焦点 最初 停留的元素--><div tabindex = "2">2</div><div id="lastSelectd" tabindex = "7">7</div><!-- 焦点 最后 停留的元素--><div tabindex = "4">4</div><div tabindex = "5">5</div><input type="text" tabindex = "6" /></BODY></html> 在很多情况下,默认的时候就是用tab键来切换的,不过其他标签的如div之类的就不好说了,只能把id设置成递增或者递减的 <script type="text/javascript">window.onload=function(){ var obj=document.getElementsByTagName("input"); for(var i=0;i<obj.length;i++){ (function(){ var index=i; obj[index].onkeydown=function(){ obj[index<obj.length-1?index+1:0].focus(); return false; }; })(); }};</script><input/><input/><input/><input/><input/><input/> 输入框 之间用tab 切换 不是自动吗 看我上面8楼的方法,设置tabindex即可实现tab切换顺序,用JS可以控制下一跳的位置。。 【求助】怎么把json的数据以string的方式读取出来,用ajax? SWFUpload 怎么删除上传队列里的文件 高手指点:有关Jquery方面知识 有高手能帮我解决这问题么? js可选参数 为什么在a标签的href中可以写javascript脚本,javascript脚本与网页标签是什么关系? 这样无耻的手段是如何实现的 "xxx.htm#3" xxx.htm页面加载的时候如何才能获取 "3"呢? 在线等!一个小问题! 如何对网页源代码进行Encode编码呢!高手请指点~~~ jquery分页插件,怎么修改他的样式呢? show段网上来的代码,抛石引玉--js html实现
{
var id = e.id; if(Event.keycode == 37) //左 39右 38上 40 下
{
document.getElementById(id.replace("开始Id","移动后的Id")).select();
}
}
调用控件设置onkeyup事件
onkeyup="Move(this,event)"
<head>
<title></title>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>
<style type="text/css">
div{
width:20px;
height:20px;
border:1px solid red;
margin-bottom:10px;
}
</style>
<script>
function tabGoHome(){
document.getElementById("firstSelectd").focus();
}
function stopEvent(e)
{
if(e.stopPropagation)
{
e.stopPropagation();
}
else
{
e.cancelBubble=true;
}
if(e.preventDefault)
{
e.preventDefault();
}
else
{
e.returnValue=false;
}
}
function check(e)
{
e = e || window.event;
target = e.srcElement||e.target;
keyCode = e.keyCode;
if(9 == keyCode)
{
if("lastSelectd" == target.id)
{
stopEvent(e);
tabGoHome();
}
}
}
</script>
</HEAD>
<BODY onload = "tabGoHome()" onkeydown = "check(event)" >
<div id="firstSelectd" tabindex = "1">1</div><!-- 焦点 最初 停留的元素-->
<div tabindex = "2">2</div>
<div id="lastSelectd" tabindex = "7">7</div><!-- 焦点 最后 停留的元素-->
<div tabindex = "4">4</div>
<div tabindex = "5">5</div>
<input type="text" tabindex = "6" />
</BODY>
</html>
window.onload=function(){
var obj=document.getElementsByTagName("input");
for(var i=0;i<obj.length;i++){
(function(){
var index=i;
obj[index].onkeydown=function(){
obj[index<obj.length-1?index+1:0].focus();
return false;
};
})();
}
};
</script>
<input/>
<input/>
<input/>
<input/>
<input/>
<input/>