先看图片或许参看问题:
http://www.suncl.net/post/102.html
我用jquery只实现了文本框的移动(暂时上下移动等同于左右移动)js代码:<script language="JavaScript" type="text/javascript" src="../javascripts/jquery-1.4.2.js"></script>
<script language="JavaScript" type="text/javascript">
$(function(){
var cols=1;
var obj = $("input");
var num = $("input").length;
$("input").bind("keydown",function(event){var key = event.keyCode;
var n = obj.index(this);
switch(key)
{
case 37://左
if(n > 0)
{
$("input:eq("+(n-1)+")").focus();//F4FAF0
$("input").css("background-color","#ffffff");
$("input:eq("+(n-1)+")").css("background-color","#F4FAF0");
}
break;
case 38://上
if(n >= cols)
{
$("input:eq("+(n-cols)+")").focus();
$("input").css("background-color","#ffffff");
$("input:eq("+(n-cols)+")").css("background-color","#F4FAF0");
}
break;
case 39://右
if(n < num-1)
{
$("input:eq("+(n+1)+")").focus();
$("input").css("background-color","#ffffff");
$("input:eq("+(n+1)+")").css("background-color","#F4FAF0");
}
break;
case 40://下
if((n+cols) < num)
{
$("input:eq("+(n+cols)+")").focus();
$("input").css("background-color","#ffffff");
$("input:eq("+(n+cols)+")").css("background-color","#F4FAF0");
}
break;
default: return true;
}
});
});
</script>那位朋友能使上下左右也能控制下拉框的焦点。
http://www.suncl.net/post/102.html
我用jquery只实现了文本框的移动(暂时上下移动等同于左右移动)js代码:<script language="JavaScript" type="text/javascript" src="../javascripts/jquery-1.4.2.js"></script>
<script language="JavaScript" type="text/javascript">
$(function(){
var cols=1;
var obj = $("input");
var num = $("input").length;
$("input").bind("keydown",function(event){var key = event.keyCode;
var n = obj.index(this);
switch(key)
{
case 37://左
if(n > 0)
{
$("input:eq("+(n-1)+")").focus();//F4FAF0
$("input").css("background-color","#ffffff");
$("input:eq("+(n-1)+")").css("background-color","#F4FAF0");
}
break;
case 38://上
if(n >= cols)
{
$("input:eq("+(n-cols)+")").focus();
$("input").css("background-color","#ffffff");
$("input:eq("+(n-cols)+")").css("background-color","#F4FAF0");
}
break;
case 39://右
if(n < num-1)
{
$("input:eq("+(n+1)+")").focus();
$("input").css("background-color","#ffffff");
$("input:eq("+(n+1)+")").css("background-color","#F4FAF0");
}
break;
case 40://下
if((n+cols) < num)
{
$("input:eq("+(n+cols)+")").focus();
$("input").css("background-color","#ffffff");
$("input:eq("+(n+cols)+")").css("background-color","#F4FAF0");
}
break;
default: return true;
}
});
});
</script>那位朋友能使上下左右也能控制下拉框的焦点。
$("form input:text,select")
可是,在设置焦点的时候不知如何设置
$("form input:text,select:eq(3)) is right?
这样写对吗?
就这个问题
$(function(){
var cols=3;
var obj = $("input");
var num = $("input").length;
$("input").bind("keydown",function(event){var key = event.keyCode;
var n = obj.index(this);
switch(key)
{
case 37://左
if(n > 0)
{
obj. get_r(n-1).focus();
}
break;
case 38://上
if(n >= cols)
{
obj. get_r(n-cols).focus();
}
break;
case 39://右
if(n < num-1)
{
obj. get_r(n+1).focus();
}
break;
case 40://下
if((n+cols) < num)
{
obj. get_r(n+cols).focus();
}
break;
default: return false;
}
});
});
</script>
get_r方法是哪里的?