jquery选择器,关于动态元素获取问题

对于由jquery动态生成的元素,如用jquery给元素添加class,或者直接添加一对p标签,不能直接绑定常用的事件,如click。因为这些元素属于动态生成,除非采用onclick内联的形式,否则将会无效。那么解决办法是使用live和on事件方法。之前确实没接触过这个,所以也产生了许多问题。

注意,jquery 1.7.2 之后的版本不建议使用 live。

例如如下的代码:

$(".box ").click(function(){});

类名为box的元素是由jquery动态生成,以上写法将会无效,那么可以改为如下:

$(".box ").live('click', function(){});

也可以写成:

$(".box ").on('click', function(){});

另外 click, blur, keyup, change等方法,都可以这样解决。

发表评论
加载中...

相关文章