xiaoQcn

导航

js数字小键盘

// JavaScript Document

var QLib_mainBoardWidth = 290;//容器宽度

var QLib_mainBoardHeight = 290;//容器高度

var QLib_ItemWidth = 60;//按钮宽度

var QLib_ItemHeight = 60;//按钮高度

var QLib_ItemPadding = 10;//按钮间隙

var QLib_Top = 0;//起始位置-y

var QLib_Left = 0;//起始位置-x

var QLib_isDotEnable = false;//小数点是否可用

var QLib_InputObj;//input 标签

var QLib_QNKB;//容器

//元素

var QLib_Item1;

var QLib_Item2;

var QLib_Item3;

var QLib_Item4;

var QLib_Item5;

var QLib_Item6;

var QLib_Item7;

var QLib_Item8;

var QLib_Item9;

var QLib_Item0;

var QLib_ItemC;//关闭按钮

var QLib_ItemD;//.

var QLib_ItemE;//确定

 

//入口函数

function QLib_QNumKeyBord(inputObj,isDotEnable)

{

    if(QLib_InputObj==inputObj&&QLib_QNKB.style.display=='block')

    {

        return;

    }

    QLib_InputObj= inputObj;

    QLib_isDotEnable= isDotEnable;

    QLib_initItems();

}

//初始化js控件

function QLib_initItems()

{

    //起始位置

    varstartPoint = QLib_GetObjPos(QLib_InputObj);

    QLib_Left=startPoint.x;

    QLib_Top=startPoint.y+QLib_InputObj.offsetHeight;

    //构造容器

    QLib_QNKB =QLib_$$("div");

    //QLib_QNKB.style.class= "QLib_Container";

    QLib_QNKB.style.position= "absolute";

    QLib_QNKB.style.top= QLib_Top;

    QLib_QNKB.style.left= QLib_Left;

    QLib_QNKB.style.width= QLib_mainBoardWidth;

    QLib_QNKB.style.height= QLib_mainBoardHeight;

    QLib_QNKB.style.background="#69686F";

    QLib_QNKB.style.display= "block";

    QLib_Item7 =QLib_Item(7,0,0);QLib_QNKB.appendChild(QLib_Item7);

    QLib_Item8 =QLib_Item(8,0,1);QLib_QNKB.appendChild(QLib_Item8);

    QLib_Item9 =QLib_Item(9,0,2);QLib_QNKB.appendChild(QLib_Item9);

    QLib_Item4 =QLib_Item(4,1,0);QLib_QNKB.appendChild(QLib_Item4);

    QLib_Item5 =QLib_Item(5,1,1);QLib_QNKB.appendChild(QLib_Item5);

    QLib_Item6 =QLib_Item(6,1,2);QLib_QNKB.appendChild(QLib_Item6);

    QLib_ItemC =QLib_Item('C',0,3);QLib_QNKB.appendChild(QLib_ItemC);

    QLib_Item1 =QLib_Item(1,2,0);QLib_QNKB.appendChild(QLib_Item1);

    QLib_Item2 =QLib_Item(2,2,1);QLib_QNKB.appendChild(QLib_Item2);

    QLib_Item3 =QLib_Item(3,2,2);QLib_QNKB.appendChild(QLib_Item3);

    QLib_Item0 = QLib_Item(0,3,0);QLib_QNKB.appendChild(QLib_Item0);

    QLib_ItemD =QLib_Item('D',3,2);QLib_QNKB.appendChild(QLib_ItemD);

    QLib_ItemE =QLib_Item('E',2,3);QLib_QNKB.appendChild(QLib_ItemE);

    document.body.appendChild(QLib_QNKB);

    if(QLib_isDotEnable)//是否有点

    {

 

    }else

    {

 

    }

}

 

//获得初始位置

function QLib_GetObjPos(ATarget)

{

    var target =ATarget;

    var pos =new QLib_CPos(target.offsetLeft, target.offsetTop);

    var target =target.offsetParent;

    while(target)

    {

        pos.x +=target.offsetLeft;

        pos.y +=target.offsetTop;

        target =target.offsetParent

    }

    return pos;

}

//Point类

function QLib_CPos(x, y)

{

    this.x = x;

    this.y = y;

}

 

//实例化容器

function QLib_Item(index,rIndex,cIndex)

{

   eval("QLib_ItemModel"+index+"="+"QLib_$$('span')");

    varQLib_ItemModel = eval("QLib_ItemModel"+index);

    QLib_ItemModel.innerHTML= index;

    QLib_ItemModel.style.display= "block";

    QLib_ItemModel.style.width= QLib_ItemWidth+"px";

    QLib_ItemModel.style.height= QLib_ItemHeight+"px";

    QLib_ItemModel.style.position= "absolute";

    QLib_ItemModel.style.top= rIndex*QLib_ItemHeight+QLib_ItemPadding*rIndex;//QLib_ItemPadding;//

    QLib_ItemModel.style.left= cIndex*QLib_ItemWidth + QLib_ItemPadding*cIndex;//QLib_ItemPadding;//

    QLib_ItemModel.style.marginLeft= QLib_ItemPadding;

    QLib_ItemModel.style.marginTop= QLib_ItemPadding

    QLib_ItemModel.style.styleFloat= "left";

    QLib_ItemModel.style.color= "#000";

    QLib_ItemModel.style.background= "#fff";

    QLib_ItemModel.style.clear="none";

    switch(index)

    {

        case 1:

        case 2:

        case 3:

        case 4:

        case 5:

        case 6:

        case 7:

        case 8:

        case 9:

        case 0:

            QLib_ItemModel.onmousedown= function(){QLib_TypeNum(""+index+"")};

            break;

        case 'C':

            QLib_ItemModel.onmousedown= QLib_DelNum;

            break;

        case 'E':

            QLib_ItemModel.onmousedown= QLib_Quit;

            break;

        case 'D':

            QLib_ItemModel.onmousedown= function(){QLib_TypeNum(".")};

            break;

    }

    if(index==0)

    {

        QLib_ItemModel.style.width= (2*QLib_ItemWidth+QLib_ItemPadding)+"px";

    }if(index=="C"||index=="E")

    {

        QLib_ItemModel.style.height= (2*QLib_ItemHeight+QLib_ItemPadding)+"px";

    }

    returneval("QLib_ItemModel"+index);

}

//创建对象

function QLib_$$(tagName)

{

    returndocument.createElement(tagName);

}

//输入数字

function QLib_TypeNum(v)

{

    if(!QLib_isDotEnable&&v=='.')

    {

        return;

    }

    if(v=='.'&&QLib_Contains('.'))

    {

        return

    }

    QLib_InputObj.value+=v;

}

//删除号码

function QLib_DelNum()

{

    QLib_InputObj.value= QLib_InputObj.value.substring(0,QLib_InputObj.value.length-1);

}

//隐藏控件

function QLib_Quit()

{

    QLib_QNKB.style.display= "none";

}

//判断输入的文本是否含有.

function QLib_Contains(d)

{

    var arr =QLib_InputObj.value.split(d);

    if(arr.length>1)

    {

        returntrue;

    }

    return false;

}

posted on 2010-11-09 14:39  xiaoQcn  阅读(7669)  评论(0编辑  收藏  举报