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

首頁 > 編程 > JavaScript > 正文

jQuery中bind與live的用法及區別小結

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

首先介紹這兩個方法之前,我們常用的是click()方法

復制代碼 代碼如下:

$("a").click(function() {
     alert("hello");
});

click()方法是bind()方法的一種簡單方法。在bind()中,
jQuery所有JavaScript事件對象,比如focus, mouseover,和resize,
都是可以作為type參數傳遞進來的。

參數:type,[data],function(eventObject)
例如:

復制代碼 代碼如下:

$("p").bind("click",function(){
     alert("hello");
})

也可以傳參
復制代碼 代碼如下:

var message = "how are you!";
$("p").bind("click",{msg:message},function(e){
     alert(e.data.msg);
})

live()給所有匹配的元素附加一個事件處理函數,
即使這個元素是以后再添加進來的也有效。如下:
復制代碼 代碼如下:

<tr class="mytr">
     <td class="mytd">Click me</td>
</tr>

$(".mytd").bind("click",function(){
      alert("hello");
})


點擊Clike me 會彈出hello

此時添加一個新的元素進來

復制代碼 代碼如下:

$(".mytr").after("<tr><td class='mytd'>后加的</td></tr>");

這時 再使用bind點擊"后加的"不會執行
改為使用live()方法
復制代碼 代碼如下:

$(".mytd").live("click",function(){
 alert("hello");
})

.live()方法能對一個還沒有添加進DOM的元素有效,是由于使用了事件委托:
綁定在祖先元素上的事件處理函數可以對在后代上觸發的事件作出回應。
傳遞給 .live() 的事件處理函數不會綁定在元素上,而是把他作為一個特殊的事件處理函數,綁定在 DOM 樹的根節點上。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 金平| 论坛| 永登县| 达日县| 晋中市| 通江县| 庄河市| 蓝山县| 乌鲁木齐市| 盐边县| 洞口县| 明星| 汉沽区| 顺义区| 新绛县| 朔州市| 萨迦县| 来安县| 涞源县| 广东省| 宁夏| 孟连| 云浮市| 固阳县| 望城县| 云林县| 灌云县| 五寨县| 莒南县| 攀枝花市| 阜南县| 高雄县| 浏阳市| 高平市| 夏河县| 凤冈县| 武清区| 白山市| 获嘉县| 沁源县| 遂昌县|