欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js 上下左右鍵控制焦點(示例代碼)

 更新時間:2013年12月14日 09:05:00   作者:  
這篇文章主要是對js上下左右鍵控制焦點的示例代碼進行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所幫助

如下所示:

復制代碼 代碼如下:

//begin---------------上下左右鍵控制

if('${iscontrol_mchntid}'.indexOf('${mchntid}')!=-1){

var texts = new Array();
//設置為focus所在的location
var x = 2;
var y = 3;
var maxx = 0;
var maxy = 0;
window.onload=function(){
var inputs = $("[location]");
for(var i = 0; i < inputs.length; i++){
texts.push(inputs[i]);
}
for(var i = 0; i < texts.length; i++){
texts[i].onfocus = new Function("setCurrent('" + texts[i].getAttribute("location") + "')");
var crtx = parseInt(texts[i].getAttribute("location").split(",")[0]);
var crty = parseInt(texts[i].getAttribute("location").split(",")[1]);
maxx = maxx < crtx ? crtx : maxx;
maxy = maxy < crty ? crty : maxy;
texts[i].onkeydown = function(e){
e = e || window.event;
switch(e.keyCode){
case 38:setPosition(x,y,38);break;// 上
case 40:setPosition(x,y,40);break;// 下
case 37:setPosition(x,y,37);break;// 左
case 39:setPosition(x,y,39);break;// 右
case 45:setPosition(x,y,45);break; // Insert鍵/返回鍵 在輸入框里是刪除且輸入庫有值時是刪除 其他為返回上一頁
default:return true;
}
};
}
};
function setPosition(x,y,keyCode){

//此處加入動態(tài)改變位置的邏輯----begin
//上下時,只改動y坐標,x坐標自動改變
//左右時,只改動x坐標,y坐標自動改變
if(keyCode == '38' && x == '3'){
if(y=='3'||y=='4'||y=='5'||y=='6'||y=='7'||y=='8'){
y='3';
}
}
if(keyCode == '40' && x == '4'){
if(y=='3'||y=='4'||y=='5'||y=='6'||y=='7'||y=='8'){
y='3';
}
}
//此處加入動態(tài)改變位置的邏輯----end

if(keyCode == '38'){
x = --x;
}
if(keyCode == '40'){
x = ++x;
}
if(keyCode == '37'){
y = --y;
}
if(keyCode == '39'){
y = ++y;
}
movePosition(x,y,keyCode);
}
function movePosition(x1,y1,keyCode){
if(keyCode == '45'){
//光標所在的對象是input時
var st = x1+","+y1;
if($("input[location='"+st+"']").attr("type")=="text"){
var oldval = $("input[location='"+st+"']").val();
var newval = oldval.substring(0,oldval.length-1);
$("input[location='"+st+"']").val(newval);
return false;
}else{
history.go(-1);
return false;
}
}
x1 = x1 > maxx ? 1 : x1;
y1 = y1 > maxy ? 1 : y1;
x1 = x1 < 1 ? maxx : x1;
y1 = y1 < 1 ? maxy : y1;

var j = 0;
for(; j < texts.length; j++){
if(texts[j].getAttribute("location") == x1 + "," + y1){
texts[j].focus();
break;
}
}
if(j == texts.length){
switch(keyCode){
case 38:movePosition(--x1,y1,keyCode);break;// 上
case 40:movePosition(++x1,y1,keyCode);break;// 下
case 37:movePosition(x1,--y1,keyCode);break;// 左
case 39:movePosition(x1,++y1,keyCode);break;// 右
}
}
}
function setCurrent(location){
x = location.split(",")[0];
y = location.split(",")[1];
}
}
//end---------------上下左右鍵控制

相關文章

  • Js自定義多選框效果的實例代碼

    Js自定義多選框效果的實例代碼

    本篇文章主要介紹了Js自定義多選效果的實例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • js禁止document element對象選中文本實現(xiàn)代碼

    js禁止document element對象選中文本實現(xiàn)代碼

    禁止document element對象選中文本在某在情況下還是很有必要的接下來本文將使用js實現(xiàn),感興趣的各位可以參考下哈
    2013-03-03
  • JavaScript 程序錯誤Cannot use ''in'' operator to search的解決方法

    JavaScript 程序錯誤Cannot use ''in'' operator to search的解決方法

    下面小編就為大家?guī)硪黄狫avaScript 程序錯誤Cannot use 'in' operator to search的解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • javascript(js) join函數(shù)使用方法介紹

    javascript(js) join函數(shù)使用方法介紹

    javascript(js) join函數(shù)使用方法介紹...
    2007-11-11
  • Javascript call及apply應用場景及實例

    Javascript call及apply應用場景及實例

    這篇文章主要介紹了Javascript call及apply應用場景及實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • vue.config.js文件重寫打包工具配置信息

    vue.config.js文件重寫打包工具配置信息

    vue.config.js是一個可選的配置文件,可以在其中定義一些自定義的配置選項,本文就來介紹一下如何配置,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • JavaScript中的DOM遍歷詳解

    JavaScript中的DOM遍歷詳解

    文檔對象模型 (DOM) 表示 HTML 文檔的結構,導航或“遍歷”此結構是 Web 開發(fā)的基本方面,使開發(fā)人員能夠在網(wǎng)頁上選擇、修改、刪除或添加內(nèi)容,本文深入研究了使用 JavaScript 進行 DOM 遍歷的藝術,提供了一個強大的工具包來處理各種遍歷場景
    2023-09-09
  • 淺談JS和Nodejs中的事件驅(qū)動

    淺談JS和Nodejs中的事件驅(qū)動

    這篇文章主要介紹了JS和Nodejs中的事件驅(qū)動,對事件驅(qū)動感興趣的同學,可以參考下
    2021-05-05
  • JS打字效果的動態(tài)菜單代碼分享

    JS打字效果的動態(tài)菜單代碼分享

    這篇文章主要介紹了JS打字效果的動態(tài)菜單,推薦給大家,有需要的小伙伴可以參考下。
    2015-08-08
  • JS正則表達式之非捕獲分組用法實例分析

    JS正則表達式之非捕獲分組用法實例分析

    這篇文章主要介紹了JS正則表達式之非捕獲分組用法,結合實例形式詳細分析了正則表達式中非捕獲分組的概念、功能、使用方法與相關注意事項,需要的朋友可以參考下
    2016-12-12

最新評論