JSLite - 事件處理

2018-12-07 00:37 更新

如有疑問歡迎到這些地方交流,歡迎加入JSLite.io組織團伙共同開發(fā)!

segmentfault社區(qū) | 官方網(wǎng)站 | 官方文檔-更詳細 | Issues

blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error 對象上直接添加事件。

  1. $("#box").click(function(){
  2. console.log("綁定點擊事件")
  3. });

ready

ready(function($){ ... }) ? self

添加一個事件偵聽器,當頁面 dom 加載完畢 DOMContentLoaded 事件觸發(fā)時觸發(fā)。加載完畢執(zhí)行,建議使用 $(func) 來代替這種用法。

  1. $(document).ready(function(){
  2. alert("當頁面dom加載完畢執(zhí)行");
  3. console.log($("#box"));
  4. })

$(func)

加載完畢執(zhí)行。與 ready 方法相同

  1. //或者使用下面方法代替ready
  2. $(function(){
  3. console.log("當頁面dom加載完畢執(zhí)行");
  4. })

bind

為每個匹配元素的特定事件綁定事件處理函數(shù)??梢越壎ㄟ@些事件 blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error paste drop dragover 。

  1. $("#box").bind("click", function(){
  2. console.log("綁定點擊事件")
  3. });

unbind

解除綁定事件,從每一個匹配的節(jié)點對象中刪除綁定的事件。

  1. var f1=function(){alert("41");}
  2. $("#box").bind("click",f1) //? 綁定事件
  3. $("#box").unbind("click",f1) //? 解除綁定事件
  4. $("#box").bind("click",function(){alert("41");}) //? 綁定事件
  5. $("#box").unbind("click",function(){alert("41");}) //? 解除綁定事件

on

on(type, [selector], function(e){ ... }) ? self

on({ type: handler, type2: handler2, ... }, [selector]) ? self

為每個匹配元素的特定事件綁定事件處理函數(shù)??梢越壎ㄟ@些事件 blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error paste drop dragover 。

  1. $("#box").on("click", function(){
  2. console.log("綁定點擊事件")
  3. });
  4. $("#box").on("click mouseover",function(evn){
  5. console.log("2"+evn)
  6. }) //? self 綁定兩個事件
  7. $("#box").on("click","p",function(){
  8. console.log("被點擊了")
  9. })//? self 返回“#box”節(jié)點
  10. $("#box").on("click",{val:1},function(){//傳參數(shù)
  11. console.log("dddd","event.data.val = " + event.data.val)
  12. })
  13. $( "#box" ).on({ //綁定多個事件
  14. click: function() {
  15. $( this ).css("background","red");
  16. },
  17. mouseover: function() {
  18. $( this ).css("background","yellow")
  19. },
  20. mousedown: function() {
  21. $( this ).css("background","green")
  22. }
  23. });

off

解除綁定事件,從每一個匹配的節(jié)點對象中刪除綁定的事件。

  1. var f1=function(){alert("41");}
  2. $("#box").on("click",f1) //? 綁定事件
  3. $("#box").off("click",f1) //? 解除綁定事件
  4. $("#box").on("click",function(){alert("41");}) //? 綁定事件
  5. $("#box").off("click",function(){alert("41");}) //? 解除綁定事件

trigger

trigger(event, [args]) ? self

匹配到的節(jié)點集合的元素上觸發(fā)指定的事件。如果給定args參數(shù),它會作為參數(shù)傳遞給事件函數(shù)。

  1. $("#box").on("abc:click",function(evn,a,c){
  2. console.log("2"+a+c)
  3. }) //? self 綁定一個事件
  4. $("#box").trigger("abc:click",["wwww"]) //? self 觸發(fā)并傳一個參數(shù)進去
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號