Когда я replaceWith
извлекаю элемент из DOM, затем replaceWith
возвращаю его обратно, зарегистрированные для него события не запускаются. Мне нужно, чтобы события остались нетронутыми.
Вот мой Javascript:
var replacement = $(document.createElement('span'));
var original = $(this).replaceWith(replacement);
replacement
.css('background-color', 'green')
.text('replacement for ' + $(this).text())
.click(function() {
replacement.replaceWith(original);
});
Демонстрационная версия
В демоверсии, когда вы щелкаете по элементу, он заменяется другим элементом, используя replaceWith
. Когда вы щелкаете по новому элементу, он заменяется исходным, используя replaceWith
. Однако обработчик щелчков больше не работает (где, я думаю, он должен).