首页 > 文章列表 > jQuery Ajax 加载浏览器缓存图片的问题:为什么 done() 回调函数不执行?

jQuery Ajax 加载浏览器缓存图片的问题:为什么 done() 回调函数不执行?

151 2025-03-03

jQuery Ajax 加载浏览器缓存图片的问题:为什么 done() 回调函数不执行?

jquery ajax 加载浏览器缓存图片的问题

使用 jquery ajax 加载图片时,当图片已缓存(“from disk cache”),可能导致 done() 回调函数不被执行。本文将探讨这个问题并提供解决方案。

问题:

$.ajax({
    url: imgurl,
    type: 'get',
    cache: true,
    processdata: false,
}).done(function () {
    //...
});

在上述代码中,如果图片被浏览器缓存,done() 回调函数将不会执行。

解决方案:

$.ajax({
    url: imgUrl,
    type: 'get',
    cache: false,
    processData: false,
}).done(function () {
    //...
});

要解决这个问题,将 cache 选项设置为 false,以指示 jquery 不使用浏览器缓存。

来源:1731029757