具体问题:$("#id .className").click(function(){})绑定事件,点击的时候无响应,
打印$("#id .className"), 是有内容的;说明是绑定事件出现了异常。
其中我 id下 class为className的元素是动态生成的,
解决办法:
首先jquery 绑定事件的方法有三种:
一、
$("#id .className").click(function(){ });
二、
$("#id .className").on("click",function(){})
三、
$("#id").on("click",".className",function(){});
本人是用的是第三种,问题得到了解决!一、二都异常
总结:
1、在页面初始化的时候已经给定固定的id时,cilck和onclick都可以正常使用;
2、当页面动态加载一个id时,使用click将失去作用,必须使用onclick才可以正常运行;
3、element.click()这种写法不支持给动态元素或样式绑定事件。支持给动态元素绑定事件的是.live()和.on()。live在jQquery1.7后就不推荐使用了。使用.on()时注意,on前面的元素必须在页面初始化的时候就存在静态页里面,这也是为什么二方法而不能正常使用的原因。