系統(tǒng)默認(rèn)情況下,使用Tab按鍵切換頁(yè)面元素的焦點(diǎn),有沒有想過回車鍵Enter也可以實(shí)現(xiàn)這種功能,并且具有良好的用戶體驗(yàn)。接下來(lái)我們使用Jquery實(shí)現(xiàn)回車鍵Enter切換焦點(diǎn),此代碼在常用瀏覽器IE7, IE8, Firefox 3, Chrome 2 和 Safari 4測(cè)試通過。
使用的開發(fā)工具是微軟VS2010+Jquery框架
實(shí)現(xiàn)步驟如下
1、首先引用Jquery類庫(kù)
<script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
2、Javascript代碼
<script type="text/javascript"> $(function () { $('input:text:first').focus(); var $inp = $('input:text'); $inp.bind('keydown', function (e) { var key = e.which; if (key == 13) { e.preventDefault(); var nxtIdx = $inp.index(this) + 1; $(":input:text:eq(" + nxtIdx + ")").focus(); } }); }); </script>
分析:
$('input:text:first').focus();
頁(yè)面初始化時(shí),焦點(diǎn)定位第一個(gè)文本框內(nèi)
var $inp = $('input:text');
取的type=文本框的元素集合
$inp.bind('keydown', function (e) {}
給文本框集合綁定'keydown'事件
var key = e.which;
取的當(dāng)前按下的鍵值 比如Enter的鍵值=13
e.preventDefault();
可以阻止它的默認(rèn)行為的發(fā)生而發(fā)生其他的事情,在這里我們組織PostBack發(fā)生,而是切換焦點(diǎn)。另外一個(gè)相近的方法是stopPropagation,它起到阻止js事件冒泡的作用。
出處:靈動(dòng)生活
責(zé)任編輯:bluehearts
上一頁(yè) 下一頁(yè) Jquery實(shí)現(xiàn)回車鍵Enter切換焦點(diǎn) [2]
◎進(jìn)入論壇網(wǎng)頁(yè)制作、WEB標(biāo)準(zhǔn)化版塊參加討論,我還想發(fā)表評(píng)論。
|