当您 remove()
一个元素并在其他地方 append()
它时,jQuery 会发生什么?
看起来事件没有被钩住——就好像你只是插入新鲜的html(我猜这就是发生的事情)。但我的代码也可能存在错误 - 所以我只想在继续之前验证此行为。
如果是这种情况 - 是否有任何简单的方法可以将事件重新连接到 HTML 的该部分,或者以不同的方式移动元素而不首先丢失事件。
最佳答案
jQuery detach() 函数与 remove() 相同,但在它返回的对象中保留事件处理程序。如果您必须删除该项目并将其与所有东西一起放置在其他地方,您可以使用它。
var objectWithEvents = $('#old').detach();
$('#new').append(objectWithEvents);
在此处查看 API 文档:http://api.jquery.com/detach/
关于javascript - 当您删除()一个元素并在其他地方追加()它时,jQuery中的事件是否会丢失?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/559147/