直播活动 on()
Live event on()
我添加了 DOM 个元素 class="divhide"
和 $.getJSON
。
现在我有很多 div 和 class="title"
,我添加了事件,但这不起作用:
$('.title').on("click",'div.divhide' , function () {
var description = $(this).find('.divhide')
description.slideToggle();
})
我在getJSON里也加了class="title"
如果您在添加点击处理程序后通过 getJSON
添加 .title
元素,则处理程序将不会附加到新元素。
应用处理程序时元素必须存在。这就是我们使用委托的原因。换句话说,将处理程序附加到将始终存在的父元素,或者在应用处理程序代码时至少存在:
$('body').on("click",'div.divhide' , function () {
var description = $(this).find('.divhide')
description.slideToggle();
})
这是一个极端的例子(可能并不明智),因为您可能不想过滤页面上的所有点击。但是,由于正文将始终存在,因此它将处理每次点击并进行过滤以查看初始点击是否在 div.divhide
.
找到 .title
div 的父级而不是 body
,它不会被您的 getJSON
调用修改并且在您应用处理程序时存在。
我添加了 DOM 个元素 class="divhide"
和 $.getJSON
。
现在我有很多 div 和 class="title"
,我添加了事件,但这不起作用:
$('.title').on("click",'div.divhide' , function () {
var description = $(this).find('.divhide')
description.slideToggle();
})
我在getJSON里也加了class="title"
如果您在添加点击处理程序后通过 getJSON
添加 .title
元素,则处理程序将不会附加到新元素。
应用处理程序时元素必须存在。这就是我们使用委托的原因。换句话说,将处理程序附加到将始终存在的父元素,或者在应用处理程序代码时至少存在:
$('body').on("click",'div.divhide' , function () {
var description = $(this).find('.divhide')
description.slideToggle();
})
这是一个极端的例子(可能并不明智),因为您可能不想过滤页面上的所有点击。但是,由于正文将始终存在,因此它将处理每次点击并进行过滤以查看初始点击是否在 div.divhide
.
找到 .title
div 的父级而不是 body
,它不会被您的 getJSON
调用修改并且在您应用处理程序时存在。