相关疑难解决方法(0)

jQuery .live()vs .on()方法,用于在加载动态html后添加click事件

我正在使用jQuery v.1.7.1,其中.live()方法显然已被弃用.

我遇到的问题是,当使用以下方法动态将html加载到元素中时:

$('#parent').load("http://..."); 
Run Code Online (Sandbox Code Playgroud)

如果我之后尝试添加click事件,则不会使用以下任一方法注册事件:

$('#parent').click(function() ...); 
Run Code Online (Sandbox Code Playgroud)

要么

// according to documentation this should be used instead of .live()
$('#child').on('click', function() ...); 
Run Code Online (Sandbox Code Playgroud)

实现此功能的正确方法是什么?它似乎只适用于.live(),但我不应该使用该方法.请注意,#child是动态加载的元素.

谢谢.

javascript jquery events dom handler

209
推荐指数
6
解决办法
15万
查看次数

jQuery.on()是否适用于在创建事件处理程序后添加的元素?

我总是在这种情况下对动态创建的元素.on()起作用.live()(例如我使用$('.foo').on('click', function(){alert('click')});然后foo由于某些AJAX而创建了类的元素,现在我期望点击该元素以引发警报) .在实践中,这些不是我得到的结果.我可能犯了一个错误,但是有人可以帮我理解实现这些结果的方法.on()吗?

提前致谢.

jquery

22
推荐指数
1
解决办法
8786
查看次数

标签 统计

jquery ×2

dom ×1

events ×1

handler ×1

javascript ×1