很多时候我们可能需要使用JS生成一些数据及部分页面。
那么在还没有生成的页面中使用JQuery的click
$("#id").click(function() {
$("#id").toggle();
});
或bind
$("#id").bind("click", function () {
$("#id").toggle();
});
显然是绑定不上的,因为元素还未生成。
直接在元素还未生成前就绑定肯定是无效的,因为所绑定的元素目前根本不存在。
不过JQuery提供了一个live来解决这个问题,它可以给所有元素绑定事件,不论是已有的,还是将来生成的,
比如:
$("#id").live("click", function () {
$("#id").toggle();
});
我相信很多朋友在JS顺序加载上也遇到过这样的问题。