jQuery事件之傳遞參數


一、jQuery綁定事件的三種方法

  我們這里首先復習一下jQuery綁定事件的三種方法:

target.click(function(){});

target.on("click",function(){});

target.bind("click",function(){});

target.live("click",function(){});

 

live方法其實是bind方法的變種,其基本功能就同bind方法的功能是一樣的,都是為一個元素綁定某個事件,但是bind方法只能給當前存在的元素綁定事件,對於事后采用JS等方式新生成的元素無效,而live方法則正好彌補了bind方法的這個缺陷,它可以對后生成的元素也可以綁定相應的事件。

 

二、傳遞參數

1.使用trigger觸發事件來進行參數傳遞

 $('p:first').bind('myclick',function(event,arg1,arg2){
     $(arg1).appendTo('body');
     console.log(arg2);
});

$('input').click(function(){
    $('p:first').trigger('myclick',//這里觸發了myclick事件
                  ['<div><a href="http://www.google.com.hk">google</a></div>'
,'this is to console.log']); //第二個參數 string
});

2.使用bind傳遞參數

var name_value='stonecold';
$('p').bind('click',{name:name_vlaue},function(event){
    console.log(event.data.name);//結果在控制台上顯示為stonecold
});

 

3.在簡單的事件中傳遞參數

 A:首先定義一個函數,在點擊的時候觸發:
         

 function fn_name(arg1){
     $(arg1).appendTo('body');
}

 

B:定義一個變量作為參數傳遞
          

var arg='<a href="http://www.google.com.hk">google<a>';
$('img:first').click(function(){
    fn_name(arg);
});  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM