Jquery 2.0.3中的live不能用了,可以用on代替

来源:互联网 发布:9字网络流行语 编辑:程序博客网 时间:2024/04/30 06:55

一年多没写Jquery了。

今天在写一个网页弹出窗,用append添加的代码在用live去绑定事件时,

chrome控制台报错:

Uncaught TypeError: Object [object Object] has no method 'live'

这是因为在jquery 1.9版本后已经将live与die方法去除,改而用on与off方法代替


在用on对普通html元素对象操作跟live一样,

对如用append添加的html元素对象则如下:

$("document").on("event","element",function(){

/* ... */

})

比如对在body中添加的登陆窗id为logindiv操作则是

$("body").on("click","#logindiv",function(){/* ... */})

当然冒泡的次数越少效率越高,举body只是个例子。


demo

<html><head><script type="text/javascript" src="jquery-2.0.3.js"></script></head><body><div class="abc" style="width:150px;height:30px;border:1px solid #ccc;">点我添加html代码</div><script>$(".abc").click(function(){$("body").append('<div class="ooo" style="width:100px;height:25px;border:1px solid #ccc;margin-top:10px;">点我弹窗!</div>');});$("body").on("click",".ooo",function(event){alert("hello");});</script></body></html>


0 0
原创粉丝点击