Ответ 1
Да, когда элемент удаляется .remove()
или .empty()
для родителя (или .html()
для родителя), данные (хранящиеся в объекте jQuery.cache
) также очищается.
Вы можете видеть в источнике:
- Здесь, где это происходит для
.remove()
- Здесь, где это происходит для
.empty()
- Здесь, где это происходит для
.html()
Во всех этих случаях функция jQuery.cleanData()
выполняет работу.
В случае, если другие ищут способы прямого удаления данных, для этого есть функции, которые обычно не используются напрямую: .removeData()
и $.removeData()
. Они ведут себя как .data()
и $.data()
в использовании - без ключа данных (параметр имени) они очистят все значения данных для элемента.