.empty() 清除事件
.empty() clears the event
我的目标是存在于具有类 b_edit_meta
的div 中的js-trigger-restoreb
,例如:
<div class="b_edit_meta">
<div class="js-trigger-restoreb">Click</div>
</div>
每当我的代码中有以下行时:
jQuery(this).closest("li").find(".b_edit_meta").empty();
它会停止函数的其余部分工作,可能是因为.empty()
正在清除它。
有没有办法在不清除事件的情况下清空该div?
jQuery(document).ready(function() {
jQuery('.js-trigger-restoreb').bind("mouseup", function() {
jQuery(this).closest("li").find(".b_edit_meta").empty();
// because of above line, nothing else works here
});
});
在jsFiddle上测试完整的代码。
在那.empty()
之后,您不会以任何其他方式使用this
,除了引用jQuery(this).closest("li")...
然后引用某些东西。
尝试在清空容器之前将该引用保存到li
jQuery(document).ready(function() {
jQuery('.js-trigger-restoreb').bind("mouseup", function() {
var closestLi = $(this).closest("li");
// find the edit bullet content and remove the meta stuff
$(closestLi).find(".b_edit_meta").empty();
然后继续使用closestLi
而不是引用清空this
容器后不再存在的"this"
来自 .empty 上的 jQuery 文档:
如果要在不破坏元素数据或事件处理程序的情况下删除元素(以便以后可以重新添加它们),请改用 .detach()。
相关文章:
- 我应该/如何清除mousemove JQuery事件侦听器
- .empty() 清除事件
- IE 输入清除图标有时不会触发更改事件
- 在文本框focusout事件的局部视图中清除表数据
- 主干事件未通过取消委托清除
- .off() 不清除任何事件
- 如何在下拉事件更改时使用 jquery 清除或清空列表框
- 选择选择2的允许清除选项时如何捕获事件
- 清除时的 JQuery UI 组合框事件
- 事件处理程序中的 webGL 绘制似乎清除了画布
- 清除两个文本框,并使用 JavaScript 对 TextChanged 或 CheckedChanged 事件进行复选
- 如何在 Acrobat 11 中清除签名时触发 JavaScript 事件
- 角度.js - Google 自动完成事件触发时的清除文本框
- 如何使用 delay() 清除事件调用集
- 在事件运行完毕后清除事件效果
- 选择另一个对象应触发“之前:选择:清除”事件
- 我在JavaScript中清除事件处理程序有多重要
- 用于清除事件属性的HTML净化器
- 如何在javascript中清除OnUnload事件中的asp.net会话值
- 可以'当我调用s.tl()时,似乎无法清除s.events.我怎样才能清除这些事件