JS异步加载,JQ事件不被执行解决方法
Posted 叶丶梓轩
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS异步加载,JQ事件不被执行解决方法相关的知识,希望对你有一定的参考价值。
一,在我们实现动态生成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事件不被执行解决方法的主要内容,如果未能解决你的问题,请参考以下文章