亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

jQuery——事件處理

發布時間:2020-07-13 00:06:12 來源:網絡 閱讀:609 作者:huingsn 欄目:web開發

1、事件流模型
    如果單擊一次在HTML頁面上的某個按鈕,不僅會觸發按鈕的單擊事件,還將觸發按鈕所屬容器(div、span)等的單擊事件,同時還將觸發父級容器的單擊事件,直至body、html和document,這一動作造成一臉串的事件觸發,形成一個事件流。因為事件流模型不同,總體可以分為冒泡型事件流和捕獲型事件流兩種。
       1)冒泡型事件流:冒泡型事件流將從下到上一級一級的觸發事件流。
       2)捕獲型事件流:捕獲型事件流將從上到下一級一級的觸發事件流。
   一般使用的是冒泡型事件流。
2、js事件種類
   1)鼠標事件: ondbclick(雙擊)、 onmouseout(光標離開某對象范圍)
   2)鍵盤事件
       onkeydown:當鍵盤上的某個鍵被按下時觸發此事件。
       onkeypress: 當鍵盤上的某個鍵被按下以后觸發此事件。
       onkeyup:當鍵盤上的某個按鍵被釋放時觸發此事件 。
   3)頁面事件
       onerror:出現錯誤時觸發此事件
       onload:頁面內容完成時觸發此事件
       onresize:當瀏覽器的窗口大小被改變時觸發此事件
       onscroll:瀏覽器的滾動條位置發生變化時觸發
       onunload:當前頁面被改變時觸發
   4)表單事件
       onblur:當前元素失去焦點時觸發
       onchange:當前元素失去焦點并且元素的內容發生改變時觸發此事件
       onfocus:當某個元素獲得焦點時觸發
       onsubmit:當某個表單被提交時觸發此事件

3、jQuery事件
   jQuery提供了一個DOM加載完成的事件,即ready事件,ready事件是一個可以在DOM加載完成后執行的事件,該事件可以綁定多個響應函數,這個事件
是window.onload一樣,ready事件是在所有DOM標記就緒時就被觸發,而不一定與之關聯的其他資源文件也能就緒。
   /* document 對象加載成功 */  
   $(document).ready(function(){  
       alert('document load');
   });  
   /* window 加載成功 */  
   $(window).ready(function(){  
       alert('window load');
   });  
   /* ID為show的DIV加載成功 */  
   $("#show").ready(function(){  
       //...
   });        
   /* html 標簽加載成功 */  
   $("html").ready(function(){  
       //...
   });
   //...對于任何dom都可以使用這個方法,當該節點加載成功執行方法。    
   1)表單事件
    a、focus: 控件獲得焦點時觸發
       blur: 控件失去焦點時觸發
       $("input").focus(function(){  
           /* 獲得焦點 */  
       })  
       .blur(function(){  
           /* 失去焦點 */  
       });  
    b、change: 控件值改變時觸發
       $("input[name=username]").change(function(){  
           /* 值改變時觸發 */  
           alert("用戶名文本框內容已改變。");  
       });  
    c、select: 空間內容被選中時觸發  
    d、submit: 表單提交時觸發
    e、focusin: 當前元素或其子元素獲得焦點時觸發
       focusout: 當前元素或其子元素失去焦點時觸發
   2)其他事件    
       load:當該元素加載就緒后觸發
       upload: 當該元素卸載后觸發
       error:當該元素發生錯誤時觸發
       resize:當瀏覽器改變大小時觸發
       scroll:當瀏覽器滾動條位置改變時觸發
3、JQuery事件處理
   1)事件綁訂   event / e1.html
       bind(type,[data],fn)
           type:事件類型
           data:可省略,{參數:值,...}
           fn:事件處理函數
       bind(map)
           一次綁定多個事件map是鍵值對{click:function1,...}也可以直接寫匿名方法。
   2)綁訂方式的簡寫形式
       click(function(){});
   3)合成事件 event/e2.html  e3.html
       hover(enter,leave) : 模擬光標懸停事件,即mouseover事件和mouseout事件
           $('.s1').hover(function(){
               $(this).addClass('s2');
               },function(){
                   $(this).removeClass('s2');
           });
       toggle(fn1,fn2...):模擬鼠標連續單擊事件
       live(type, fn):                該方法為整個頁面生命周期內的某一類對象綁定一個事件處理程序
   4)刪除事件
       unbind([type], data):刪除匹配對象的事件處理程序,對應bind方法,它可以刪除所有以bind方式綁定的自定義事件處理程序
           $("#b").unbind("click");
       die([type][,fn]):die方法與live方法對應,用于解除用live注冊的自定義事件 ,type用于指定要刪除的事件類型,fn用于指定要刪除的事件處理程序的名稱。
4、jQuery事件對象的屬性與方法
   屬性:
       type:獲得該事件對象的事件類型,如click、focus、mouseover等
       target:獲得事件觸發者(DOM對象)
       data:獲得調用事件時傳入的額外參數集合
       relatedTarget:獲得觸發鼠標事件的DOM元素
       currentTarget:獲得當前DOM元素(等同于this關鍵字)
       pageX/pageY:獲得鼠標事件中,鼠標光標相對于頁面左上角的位置
       result:獲得上一個事件處理函數返回的值
       timeStamp:獲得事件發生的事件戳
   方法:
       preventDefault():阻止默認的事件行為
       isDefaultPrevent():是否執行過preventDefault()方法
       stopPropagation():停止事件冒泡
       isPropagationStopped():是否調用了stopPropagation()方法
       stopImmediatePropagation():中止處理該事件,該方法將停止該事件的其他事件處理程序,并且停止事件冒泡
       isImmediatePropagationStopped():是否調用了stopImmediatePropagation()方法

       例:
       $(function(){
           $('#a1').click(function(e){
               alert("你點擊了一個鏈接");
               //停止冒泡
               e.stopPropagation();
           });            
           $('#a2').click(function(e){
               var flag = confirm('確定刪除嗎');
               if(!flag){
                   e.preventDefault();
               }
           });
       });

4、事件冒泡 event/ e4.html
       a,什么是事件冒泡?
           子節點產生的事件會依次向上拋給相應的父節點。
       b,如何取消事件冒泡?
           event.cancelBubble = true;
       c, 如何獲得事件對象?
           只需要給事件處理函數添加event作為參數,比如<a href...  onclick="clickA(event);">
       d, 事件對象的作用?
            作用1: 找到事件源
                event.target;    firefox,chrome支持
                event.srcElement;  ie支持
                event.target || event.srcElement
            作用2:   獲得鼠標點擊的坐標
                event.clientX;
                event.clientY;
       (1)獲得事件對象 event / e5.html
           只需要給事件處理函數傳一個參數。
           click(function(event){});
       (2)事件對象的作用  
           a,獲得事件源
               event.target;
           b,獲得鼠標點擊的坐標
               event.pageX
               event.pageY
           c,事件類型
               event.type
       (3)停止冒泡   event / e6.html
           event.stopPropagation()
       (4) 停止默認行為
           event.preventDefault()
       5)模擬操作 event / e7.html
           trigger('click')

           //$('#username').trigger('focus');
           //也可以簡化成
           $('#username').focus();

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宾阳县| 江城| 额尔古纳市| 垫江县| 铜鼓县| 南漳县| 宝清县| 正宁县| 临泉县| 大理市| 东明县| 武定县| 锡林浩特市| 乌苏市| 沅江市| 壤塘县| 页游| 木兰县| 尤溪县| 遂溪县| 思茅市| 绿春县| 聂拉木县| 布尔津县| 南汇区| 休宁县| 塔河县| 汾阳市| 巴彦淖尔市| 额尔古纳市| 团风县| 滁州市| 鄂托克旗| 大田县| 高雄市| 新田县| 绥化市| 宣威市| 天台县| 清新县| 云南省|