JS異步加載,JQ事件不被執行解決方法
阿新 • • 發佈:2017-07-20
出現 xhtml 解決 col 添加 str 事件 src del
一,在我們實現動態生成HTML代碼時會出現,使用JQ方法會不被執行,解決方法,如下:使用jquery的委托事件,將該方法委托到頁面已經存在的一個節點上
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <script src="jquery-1.11.1.js"></script> <script> $(function () { $("#demo").delegate(‘.t1‘, ‘click‘, function () { alert("t1"); }); $("#demo").delegate(‘#t2‘, ‘click‘, function () { alert("t2"); }); $("#demo").delegate(‘.t3‘, ‘click‘, function () { alert("t3"); }); $("#demo").delegate(‘#t4‘, ‘click‘, function () { alert("t4"); }); Test(); }); function Test() { var strHtml = "<div class=‘t1‘>t1</div>"; strHtml += "<div id=‘t2‘>t2</div>"; strHtml += "<div class=‘t3‘>t3</div>"; strHtml += "<div id=‘t4‘>t4</div>"; $("#demo").html(strHtml); } </script> </head> <body> <div id="demo"> </div> <div id="demo1"> </div> </body> </html>
二,經過以上測試,得出
1》使用class和id觸發的寫法是一樣的
2》JS動態添加的HTML並不需要在綁定事件的節點內,一樣可以觸發成功
JS異步加載,JQ事件不被執行解決方法