删除或替换该元素后,使用jQuery.data()函数为给定元素存储的数据会发生什么变化?在测试中,如果删除了附加元素后,此数据将不再可用。
答案 0 :(得分:16)
是的,当父项(或父项.remove()
)上的.empty()
或.html()
删除元素时,数据(存储在jQuery.cache
对象中)也被清理干净了。
您可以在来源中看到:
.remove()
.empty()
.html()
在所有这些情况下,jQuery.cleanData()
功能都能正常工作。
如果其他人发现这种情况正在寻找直接删除数据的方法,则可以使用此功能,而不是直接使用这些功能:.removeData()
和$.removeData()
。它们的行为类似于.data()
和$.data()
- 没有数据键(名称参数),它们将清除元素的所有数据值。