国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

深入理解JQuery keyUp和keyDown的區別

2019-11-20 21:28:57
字體:
來源:轉載
供稿:網友

定義和用法
完整的 key press 過程分為兩個部分:1. 按鍵被按下;2. 按鍵被松開。

當按鈕被按下時,發生 keydown 事件。

keydown() 方法觸發 keydown 事件,或規定當發生 keydown 事件時運行的函數。

復制代碼 代碼如下:

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("input").keydown(function(){
    $("input").css("background-color","#FFFFCC");
  });
  $("input").keyup(function(){
    $("input").css("background-color","#D6D6FF");
  });
});
</script>
</head>
<body>
Enter your name: <input type="text" />
<p>當發生 keydown 和 keyup 事件時,輸入域會改變顏色。請試著在其中輸入內容。</p>
</body>
</html>

眾所周知,jquery封裝了很多事件交互方法,這里講到的問題在原生js中也是有的。

keyup是在用戶將按鍵抬起的時候才會觸發的,屬于整個按鍵過程中的最后階段,所以有其特定的用處,就是在左側輸入,右側同步顯示的過程中很有用處。典型的例子就是郵件編輯預覽的應用。

復制代碼 代碼如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>無標題頁</title>

    <script src="JS/jquery-1.4.2.js" type="text/javascript"></script>

    <script type="text/javascript">
        $(function() {
            $('#t1').live('keyup', function() {
                $('#v1').text($(this).val());
            });
            $('#t2').live('keydown', function() {
                $('#v2').text($(this).val());
            });
            $('#t3').live('keypress', function() {
                $('#v3').text($(this).val());
            });
        });    
    </script>

</head>
<body>
    <textarea id="t1"></textarea>
    <div id="v1">
    </div>
    <textarea id="t2"></textarea>
    <div id="v2">
    </div>
    <textarea id="t3"></textarea>
    <div id="v3">
    </div>
</body>
</html>


這里分別應用了三種事件,其中t1能夠完整的同步到v1中,而keypress和keydown總是少最后一個字符,這樣就說明了這三種事件觸發的小小區別,keydown是在按下時觸發,不能得到最后的輸入結果,keypress也是一樣。

例如:keydown綁定文本框,每次點擊觸發事件,在獲取文本框的值,總是打印上次操作時文本框的內容,

這是因為keydown操作后,事件觸發了,但值還未顯示在文本框中,所以這類操作要用keyup 一個完整的按鍵動作后,才可以獲取文本框的值。

keydown與keypress更適用于通過鍵盤控制頁面類功能的實現。

獲取鍵盤點擊的鍵位:

復制代碼 代碼如下:

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("input").keydown(function(event){
    $("div").html("Key: " + event.which);
  });
});
</script>
</head>
<body>

請隨意鍵入一些字符:<input type="text" />
<p>當您在上面的框中鍵入文本時,下面的 div 會顯示鍵位序號。</p>
<div />
</body>
</html>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 普兰县| 龙口市| 阿巴嘎旗| 本溪| 南陵县| 鸡东县| 麻城市| 泾川县| 哈密市| 栖霞市| 淳安县| 新乡市| 哈尔滨市| 镇坪县| 佛坪县| 黄梅县| 永和县| 水城县| 剑河县| 思茅市| 东宁县| 海口市| 安达市| 临沭县| 东方市| 龙里县| 镇康县| 彝良县| 柯坪县| 绵阳市| 鹤壁市| 加查县| 安仁县| 沙坪坝区| 同心县| 施秉县| 鹤岗市| 眉山市| 石柱| 葫芦岛市| 罗平县|