jQuery事件

鼠標事件

  • click和dbclick,鼠標單擊和雙擊
<div id="test">點擊觸發(fā)<div>
$("#test").click(function() {
    //this指向 div元素
});
<div id="test">點擊觸發(fā)<div>
$("#test").click(11111,function(e) {
    //this指向 div元素
    //e.data  => 11111 傳遞數(shù)據(jù)
});
  • mousedown 與 mouseup 鼠標按下和松開
  • mousemove 鼠標移動
  • mouseover 與 mouseout 鼠標移入移出
  • mouseenter與mouseleave 同樣是鼠標移入移出
    區(qū)別:

mouseover 與 mouseout 會作用在選中元素的后代身上,而mouseenter與mouseleave則不會

  • hover()方法是同時綁定 mouseenter和 mouseleave事件。
 $("p").hover(
        function() {
            $(this).css("background", 'red');
        },
        function() {
            $(this).css("background", '#bbffaa');
        }
    );
  • focusin()方法在所選元素獲得焦點的時候觸發(fā)
  • focusout()方法在所選元素失去焦點的時候觸發(fā)

表單事件

  • focus與blur事件,與focusin和focusout不同的是 blur與focus不會總用于他的后代,即不支持冒泡處理
  • change事件
    input元素
    監(jiān)聽value值的變化,當(dāng)有改變時,失去焦點后觸發(fā)change事件。對于單選按鈕和復(fù)選框,當(dāng)用戶用鼠標做出選擇時,該事件立即觸發(fā)
    select元素
    對于下拉選擇框,當(dāng)用戶用鼠標作出選擇時,該事件立即觸發(fā)
    textarea元素
    多行文本輸入框,當(dāng)有改變時,失去焦點后觸發(fā)change事件
  • select只能作用與<input>和<textarea>元素,當(dāng)鼠標選中文字時觸發(fā)
  • submit事件,在提交表單的時候觸發(fā)
    具體能觸發(fā)submit事件的行為:
    1. <input type="submit">
    2.<input type="image">
    3.<button type="submit">
    4.當(dāng)某些表單元素獲取焦點時,敲擊Enter(回車鍵)
<script type="text/javascript">
    //回車鍵或者點擊提交表單
    $('#target1').submit(function(e) {
        alert('捕獲提交表達動作,不阻止頁面跳轉(zhuǎn)')
    });
    //回車鍵或者點擊提交表單,禁止瀏覽器默認跳轉(zhuǎn):
    $('#target2').submit(function() {
        alert('捕獲提交表達動作,阻止頁面跳轉(zhuǎn)')
        return false;
    });
    </script>

<form action="______">這里面的地址就是提交之后頁面跳轉(zhuǎn)的地址。

鍵盤事件

  • keydown()與keyup()事件
  • keypress事件與keydown和keyup的主要區(qū)別
    1.只能捕獲單個字符,不能捕獲組合鍵
    2.無法響應(yīng)系統(tǒng)功能鍵(如delete,backspace)
    3.不區(qū)分小鍵盤和主鍵盤的數(shù)字字符

事件的綁定與解綁

  • on()的多事件綁定
    使用方法
    基本用法
    $("#elem").on('click',function(){}) //on方式
    多個事件綁定同一個函數(shù)
    $("#elem").on("mouseover mouseout",function(){ });
    多個事件綁定不同函數(shù)
    $("#elem").on({mouseover:function(){}, mouseout:function(){} });
    示例:
  <script type="text/javascript">
    //多事件綁定一
    $("#test2").on('mousedown mouseup', function(e) {
        $(this).text('觸發(fā)事件:' + e.type)
    })
  </script>
  <script type="text/javascript">
    //多事件綁定二
    $("#test3").on({
        mousedown: function(e) {
            $(this).text('觸發(fā)事件:' + e.type)
        },
        mouseup: function(e) {
            $(this).text('觸發(fā)事件:' + e.type)
        }
    })
  </script>
  • on()的高級用法,事件委托機制
  <div class="left">
        <div class="aaron">
            <a>點擊這里</a>
        </div>
  </div>
  <script type="text/javascript">
    //給body綁定一個click事件
    //沒有直接a元素綁定點擊事件
    //通過委托機制,點擊a元素的時候,事件觸發(fā)
    $('body').on('click', 'a', function(e) {
       alert(e.target.textContent)
    })
  </script>

以上代碼,在點擊<a>標簽內(nèi)容的時候觸發(fā)

  • 卸載事件
    刪除一個事件:$("elem").off("name")
    刪除多個事件:$("elem").off("name1 name2")
    刪除所有事件:$("elem").off()
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 總結(jié): 鼠標事件 1.click與dbclick事件$ele.click()$ele.click(handler(...
    阿r阿r閱讀 1,715評論 2 10
  • 鼠標事件 .click() 單擊 .dbclick()雙擊 .click() 不帶任何參數(shù),一般用來指定觸發(fā)一...
    學(xué)開船不會開船閱讀 538評論 0 0
  • JavaScript和HTML之間的交互是通過用戶和瀏覽器操作頁面時引發(fā)的事件來處理的。 jQuery增加并擴...
    DHFE閱讀 687評論 0 1
  • 資料來源 w3cschool 1. jQuery名稱沖突 解決方法 var $jquery = jQuery.no...
    小人物的秘密花園閱讀 481評論 0 0
  • (續(xù)jQuery基礎(chǔ)(1)) 第5章 DOM節(jié)點的復(fù)制與替換 (1)DOM拷貝clone() 克隆節(jié)點是DOM的常...
    凜0_0閱讀 1,509評論 0 8

友情鏈接更多精彩內(nèi)容