如何清除 jQuery DOM 缓存?

Posted

技术标签:

【中文标题】如何清除 jQuery DOM 缓存?【英文标题】:How can I clear the jQuery DOM cache? 【发布时间】:2012-06-29 16:07:42 【问题描述】:

我仍在开发和测试 jQuery Mobile 应用程序,我不断看到我的代码的旧版本弹出并尝试执行。也许是因为我在某些地方使用了 data-dom-cache="true" ?我已经重新启动了我的网络服务器,但这并没有解决它。有什么想法吗?

【问题讨论】:

DOM 缓存本质上驻留在客户端上,因此重新启动您的 Web 服务器几乎没有用处将其清空。您是否禁用了浏览器中的缓存?这样缓存就会在每次页面加载之间清空。 first page is always cached 我觉得很混乱。见***.com/questions/4660934/… 【参考方案1】:

您可以使用一些 javascript 在 DOM 缓存中找到您的元素并从那里删除它:-

$.domCache('#foo').remove();

#foo 是您的对象的 ID。

我不相信(尽管可能是错误的)没有 .clear 函数,因此您需要遍历之前为您缓存的所有现有元素。

【讨论】:

嗨,我以前没有见过 $.domCache(..) 的构造。你能链接到一些文档吗?【参考方案2】:

$.domCache 对我不起作用,但我想出了其他解决方案:

function clearjQueryCache()
    for (var x in jQuery.cache)
        delete jQuery.cache[x];
    

【讨论】:

以上是关于如何清除 jQuery DOM 缓存?的主要内容,如果未能解决你的问题,请参考以下文章

Bootstrap 4.1.3 modal body 保留 jquery 返回的数据。如何清除每个新请求的缓存?

jQuery validate 如何清除remote验证的缓存 (在select验证时这个bug尤为明显)

jquery mobile 在点击时清除 DOM

jQuery数据缓存$.data 的使用以及源码解析

数据缓存Data

数据缓存Data