Atitit.獲得向上向下左的右的鄰居的方法 軟鍵盤的設計.. Left right可以直接使用next prev.. Up down可以使用pix 判斷...獲得next element的position...比較top 不過,要是跨block的化...僅僅所有的可以使用positon方案了... ...
Atitit.獲得向上向下左的右的鄰居的方法 軟鍵盤的設計..
Left right可以直接使用next prev..
Up down可以使用pix 判斷...獲得next element的position...比較top
不過,要是跨block的化...僅僅所有的可以使用positon方案了...
判斷是不是next block...可以使用span 10px;...因為block尺寸不一樣大..貝兒也能使用中心線了..
if(left_cur+10 >focusObj_left && left_cur-10<focusObj_left && top_cur>focusObj_top)
作者:: ★(attilax)>>> 綽號:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿爾 拉帕努伊 ) 漢字名:艾龍, EMAIL:[email protected]
轉載請註明來源: http://www.cnblogs.com/attilax/
// JavaScript Document
function SearchBox()
{
}
SearchBox.prototype.removeFocus=function()
{
var arr=$(".searchbox .key");
arr.each(function(index, element) {
$(element).removeClass("hover");
});
//var now=$(".hover").get(0);
}
SearchBox.prototype.getFocusControl=function()
{
var now=$(".hover").get(0);
return now;
}
SearchBox.prototype.key_up_event=function(curFocusObj)
{
}
SearchBox.prototype.key_down_event=function(curFocusObj)
{
var focusObj_top = $(curFocusObj).offset().top;
var focusObj_left = $(curFocusObj).offset().left;
alert("cur xy:"+focusObj_left+" "+focusObj_top);
var isFind=false;
var arr=$(".searchbox .key");
arr.each(function(index, element) {
if( $(element).html()=="J")
alert("--");
if($(element).attr("id")!=$(curFocusObj).attr("id"))
$(element).removeClass("hover");
if($(element).attr("id")==$(curFocusObj).attr("id"))
return true; //continue;
var top_cur= $(element).offset().top;
var left_cur= $(element).offset().left;
if(left_cur+10 >focusObj_left && left_cur-10<focusObj_left && top_cur>focusObj_top)
{
$(element).addClass("hover");
isFind=true;
return false; //break;
}
});
if(isFind)
$(curFocusObj).removeClass("hover");
}
SearchBox.prototype.key_left_event=function(curFocusObj)
{
}
SearchBox.prototype.key_rit_event=function(curFocusObj)
{
}
SearchBox.prototype.key_enter_event=function(curFocusObj)
{
var value = curFocusObj.html();
$('.searchbox .textbox').append(value);
}
SearchBox.prototype.bindKeyEvent=function()
{
var arr=$(".searchbox .key");
arr.each(function(index, element) {
var id="key_aid_"+index;
$(element).attr("id",id);
//
// objEvtMap[ id+"--left" ]=function(element)
// {
//
//
// }
objEvtMap[ id+"--enter" ]=function(element)
{
this.key_enter_event($(element));
}
objEvtMap[ id ]=function(evt,element)
{
if(evt=="down")
this.key_down_event($(element));
if(evt=="up")
this.key_up_event($(element));
if(evt=="left")
{
this.key_left_event($(element));
};
if(evt=="rit")
{
this.key_rit_event($(element));
}
};
});
}