标签:
bind()方法绑定事件的时候,第二个参数是函数,如果代码都写在函数里面,没有任何问题。但是,直接调用外部封装的函数需要注意,出错的例子:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> <div>点我</div> <script src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script> <script> $("div").bind("click",function(){popWindow()}); //弹窗测试函数 function popWindow(){ alert("弹窗方法执行了...") } </script> </body> </html>
上面这个例子打开网页立即弹窗,说明外部的函数立马执行了。当我们点击div的时候,没反应了。。。
在匿名函数里面调用外面封装的函数就没有问题了,例子:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> <div>点我</div> <script src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script> <script> $("div").bind("click", popWindow()); function popWindow(){ alert("弹窗方法执行了...") } </script> </body> </html>
这样就正常了。
Jquery还有许多这样的例子,都是一样的解决办法。
标签:
原文地址:http://www.cnblogs.com/xiaochongchong/p/5498676.html