jquery的live转on的办法
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <script src="http://libs.baidu.com/jquery/1.9.1/jquery.min.js"></script> 5 <script> 6 $(document).ready(function(){ 7 setTimeout("$.appendText()",2000) 8 $(document).on("mouseover mouseout","p",function(e){ 9 if(e.type=="mouseover") 10 { 11 $("body").css("background-color","lightgray"); 12 } 13 else if(e.type=="mouseout") 14 { 15 $("body").css("background-color","lightblue"); 16 } 17 }); 18 $.appendText = function() 19 { 20 var txt1="<p style='border:1px solid red;'>Text.</p>"; // 以 HTML 创建新元素 21 var txt2=$("<p style='border:1px solid blue'></p>").text("Text."); // 以 jQuery 创建新元素 22 var txt3=document.createElement("p"); // 以 DOM 创建新元素 23 txt3.innerHTML="Text."; 24 $("body").append(txt1,txt2,txt3); // 追加新元素 25 } 26 }); 27 </script></head><body><p>Click or move the mouse pointer over this paragraph.</p><input type='button' value='ssssssssssss' onclick='setTimeout()'> 28 </body> 29 </html>
最近从1.6.2升到1.9.1
发现live被取消了,只能用on (die->off)
但是却发现为新增元素绑定事件的时候只能如上代码所示。
肯定很麻烦也很别扭,
不知道大家有没有什么更好的办法,请赐教