jQuery initKeyPad是一個(gè)基于jQuery的插件,它能夠快速的為文本框提供數(shù)字鍵盤輸入。借助這個(gè)插件,我們能夠很輕松的實(shí)現(xiàn)一個(gè)針對(duì)移動(dòng)設(shè)備優(yōu)化的數(shù)字輸入框。
$(selector).initKeyPad(options);
使用jQuery initKeyPad非常簡(jiǎn)單,只需要在文本框上調(diào)用該方法,并傳入一個(gè)對(duì)象作為參數(shù)即可。對(duì)象中可以包含多個(gè)可選項(xiàng),如下:
var options = { length: 4, // 密碼長(zhǎng)度,默認(rèn)值是4 disableTap: true, // 是否禁用文本框的tap事件,默認(rèn)是禁用的 shuffle: true, // 是否將數(shù)字按鈕打亂排序,默認(rèn)是打亂的 lowercase: true, // 是否允許小寫字母,默認(rèn)允許 uppercase: true, // 是否允許大寫字母,默認(rèn)允許 numbers: true, // 是否允許數(shù)字,默認(rèn)允許 specialChars: '', // 允許特殊字符,字符串形式,比如'@#$',默認(rèn)為空 onKeypress: function (key, value) { console.log(key, value); // 每個(gè)鍵被按下時(shí)觸發(fā)的回調(diào)函數(shù) }, onKeypressSubmit: function (value) { console.log(value); // 確定按鈕被按下時(shí)觸發(fā)的回調(diào)函數(shù) }, onKeypressCancel: function () { console.log('cancel'); // 取消按鈕被按下時(shí)觸發(fā)的回調(diào)函數(shù) } }
在對(duì)象中可以定義多個(gè)回調(diào)函數(shù),每個(gè)回調(diào)函數(shù)的參數(shù)不同,實(shí)現(xiàn)不同的功能。在keypress回調(diào)函數(shù)中,我們可以控制用戶按下哪些鍵,以及鍵所代表的值。在其他回調(diào)函數(shù)中,我們可以自定義響應(yīng)的動(dòng)作,比如在確定按鈕被按下時(shí)將文本框的值提交到后臺(tái)進(jìn)行驗(yàn)證。
在使用jQuery initKeyPad時(shí),我們需要引入它的js文件,并確保jQuery也已經(jīng)引入了。jQuery initKeyPad可以為我們?cè)谝苿?dòng)端提供更好的用戶體驗(yàn),壓縮之后的js文件大小只有30K左右,使用它可以提高我們的開發(fā)效率。