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

jQuery 前的按鍵判斷代碼

 更新時(shí)間:2010年03月19日 11:39:32   作者:  
剛看到個(gè)問(wèn)題,如何得知同時(shí)按下了哪幾個(gè)鍵以及按鍵順序(難道是格斗游戲的組合鍵?),其實(shí)jQuery實(shí)現(xiàn)起來(lái)是很簡(jiǎn)單的。
做web開發(fā)的時(shí)候,有時(shí)候需要根據(jù)鍵盤進(jìn)行一些操作,例如按下Enter的時(shí)候提交表單,禁止用戶輸入某些特殊字符,設(shè)置快捷鍵等等。這時(shí)候需要找出用戶按下的是那些按鍵,寫個(gè)小程序來(lái)測(cè)試按鍵。

復(fù)制代碼 代碼如下:

$(document).ready(function(){
var $down = $("#down");
var $press = $("#press");
var $up = $("#up");
$(document).keydown(function(event){
$down.append(String.fromCharCode(event.keyCode) + " ");
if (event.ctrlKey) {
alert("ctrl");
}
}).keyup(function(event){
$up.append(String.fromCharCode(event.keyCode) + " ");
}).keypress(function(event){
$press.append(String.fromCharCode(event.keyCode) + " ");
});
});

方法是觸發(fā)down時(shí),把keyCode push到數(shù)組里,并刪除重復(fù)元素;觸發(fā)up時(shí),用$.grep從數(shù)組中刪除該keyCode。
在任意時(shí)刻,這個(gè)數(shù)組里都保存了當(dāng)前所按的按鍵,并且順序是根據(jù)按鍵順序排列的。
用jQuery判斷當(dāng)前所按的按鍵
方法就是用一個(gè)外部的數(shù)組保存當(dāng)前按鍵。
在觸發(fā)keydown時(shí),把keyCode push到數(shù)組里,并刪除重復(fù)元素;觸發(fā)keyup時(shí),用$.grep從數(shù)組中刪除該keyCode。

實(shí)現(xiàn)代碼如下:
復(fù)制代碼 代碼如下:

當(dāng)前按鍵:<span id="msg"></span>
<script type="text/javascript">
Array.prototype.unique = function () { //這個(gè)是刪除重復(fù)元素用的,可惜$.unique只能處理DOM數(shù)組。
var o = {};
for (var i = 0, j = 0; i < this.length; ++i) {
if (o[this[i]] === undefined) {
o[this[i]] = j++;
}
}
this.length = 0;
for (var key in o) {
this[o[key]] = key;
}
return this;
};
var $msg = $('#msg');
var keys = [];
$(document).keydown(function(event){
keys.push(event.keyCode);
keys.unique();
$msg.html(keys.join(' '));
}).keyup(function(event){
keys.push(event.keyCode);
keys = $.grep(keys, function (n) {return n != event.keyCode;});
$msg.html(keys.join(' '));
});
</script>

相關(guān)文章

  • 使用jQuery插件創(chuàng)建常規(guī)模態(tài)窗口登陸效果

    使用jQuery插件創(chuàng)建常規(guī)模態(tài)窗口登陸效果

    隱藏模態(tài)窗口技術(shù)是一種很好的解決方案,用于處理不是特有必要出現(xiàn)在網(wǎng)頁(yè)上的界面元素,下面與大家分享下如何利用jQuery插件leanModal建立一個(gè)常規(guī)模態(tài)窗口
    2013-08-08
  • jQuery原理系列-常用Dom操作詳解

    jQuery原理系列-常用Dom操作詳解

    下面小編就為大家?guī)?lái)一篇jQuery原理系列-常用Dom操作詳解。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-06-06
  • jQuery中的pushStack實(shí)現(xiàn)原理和應(yīng)用實(shí)例

    jQuery中的pushStack實(shí)現(xiàn)原理和應(yīng)用實(shí)例

    這篇文章主要介紹了jQuery中的pushStack實(shí)現(xiàn)原理和應(yīng)用實(shí)例,pushStack是jQuery內(nèi)核中一個(gè)非常重要的函數(shù),許多jQuery內(nèi)部函數(shù)中都頻繁用到它,掌握這個(gè)函數(shù),有利于理解jQuery的運(yùn)行原理,需要的朋友可以參考下
    2015-02-02
  • jQuery發(fā)送Ajax請(qǐng)求的幾種方法舉例

    jQuery發(fā)送Ajax請(qǐng)求的幾種方法舉例

    Ajax一個(gè)向后端發(fā)送請(qǐng)求的方式,下面這篇文章主要給大家介紹了關(guān)于jQuery發(fā)送Ajax請(qǐng)求的幾種方法,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用jQuery具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2023-06-06
  • jQuery中val()方法用法實(shí)例

    jQuery中val()方法用法實(shí)例

    這篇文章主要介紹了jQuery中val()方法用法,以實(shí)例形式分析了val()方法的兩種常見用法,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2014-12-12
  • jquery使用animate方法實(shí)現(xiàn)控制元素移動(dòng)

    jquery使用animate方法實(shí)現(xiàn)控制元素移動(dòng)

    這篇文章主要介紹了jquery使用animate方法實(shí)現(xiàn)控制元素移動(dòng),涉及jQuery中animate方法的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • JQuery日歷插件My97DatePicker日期范圍限制

    JQuery日歷插件My97DatePicker日期范圍限制

    這篇文章主要介紹了JQuery日歷插件My97DatePicker日期范圍限制的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • jQuery動(dòng)態(tài)生成Bootstrap表格

    jQuery動(dòng)態(tài)生成Bootstrap表格

    這篇文章主要介紹了jQuery動(dòng)態(tài)生成bootstrap表格的相關(guān)資料,非常不錯(cuò)具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2016-11-11
  • jQuery中document與window以及l(fā)oad與ready 區(qū)別詳解

    jQuery中document與window以及l(fā)oad與ready 區(qū)別詳解

    這篇文章主要介紹了jQuery中document與window以及l(fā)oad與ready 區(qū)別詳解,需要的朋友可以參考下
    2014-12-12
  • JQuery的加載和選擇器用法簡(jiǎn)單示例

    JQuery的加載和選擇器用法簡(jiǎn)單示例

    這篇文章主要介紹了JQuery的加載和選擇器用法,結(jié)合簡(jiǎn)單實(shí)例形式分析了jQuery的功能、加載、選擇器的相關(guān)使用技巧,需要的朋友可以參考下
    2019-05-05

最新評(píng)論