防止从 jQuery 加载缓存图像

瓦拉

当我创建一个页面时,我遇到了缓存问题。这是我的简化代码。

[HTML]

<body>
    <div>here parent contents</div>
    <input id="btn1" class="btn" data-val="1" type="button" />
    <input id="btn2" class="btn" data-val="2" type="button" />
    <input id="btn3" class="btn" data-val="3" type="button" />
    <div id="childContents"></div>
</body>

[javascript]

$(".btn").click(function (e) {
    $("#childContents").load("url?val=" + e.getAttribute("data-val"),
    function () {
        success call back function
    });
});

重点是:

[子HTML]

<!-- the image change depanding on some condition -->
<div style="background-image: url('imgUrl')">
    contents
</div>

每当我单击按钮并重新load显示子视图时,我希望子视图所具有的图像会发生变化。但是由于缓存了图像,孩子的图像并没有改变。我该怎么办?

我想用javascript解决它,因为有时jquery版本会成为一个大问题,我总是考虑它的版本。所以我想让我的代码对 jQuery 的依赖很小。(例如,jquery 的异步 ajax 选项等不适用于低版本的 IE)

加法器

您可以将当前时间添加为缓存断路器。

$(".btn").click(function (e) {
    $("#childContents").load("url?val=" + e.getAttribute("data-val"),
    function () {
        //get time since 1970 in milliseonds
        var d = new Date();
        var n = d.UTC();
        //append a cache breaker
        var imgUrl = "background.jpg" + "?t=" + n;
        //set the img url
        $('#backgrounddiv').css('background-image', 'url("'+imgUrl+'")');

    });
});


<div id="backgrounddiv" style="background-image: url('background.jpg')">
    contents
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

防止jQuery Mobile缓存页面

来自分类Dev

防止jQuery移动链接缓存

来自分类Dev

防止CSS和jQuery(移动版)被缓存

来自分类Dev

防止图像加载角度

来自分类Dev

防止或阻止CPU数据缓存加载

来自分类Dev

防止浏览器缓存的图像

来自分类Dev

防止浏览器缓存上传图像

来自分类Dev

有没有一种方法(JavaScript或jQuery)顺序加载图像(防止并行下载)

来自分类Dev

如何防止Ajax调用jquery后重新加载页面

来自分类Dev

防止使用jQuery函数加载原始DOM状态

来自分类Dev

如何防止jquery移动加载对话框?

来自分类Dev

防止仅从网站的一页重新加载页面jQuery

来自分类Dev

如何使用jQuery防止随机放置的图像重叠

来自分类Dev

如何防止使用jquery随机放置的图像重叠

来自分类Dev

防止图像缓存,但无法获得图像宽度

来自分类Dev

防止图像缓存,但无法获得图像宽度

来自分类Dev

jQuery仅在没有缓存的情况下预加载图像

来自分类Dev

如何防止<img>标签加载其图像?

来自分类Dev

加载时如何防止图像移位?

来自分类Dev

如何防止显示部分加载的图像?

来自分类Dev

防止在 nodejs 请求上加载图像

来自分类Dev

jQuery在缓存中预加载图像并在其他功能继续之前获取原始图像大小

来自分类Dev

jQuery防止快速点击

来自分类Dev

防止jQuery动画排队

来自分类Dev

jQuery防止提交延迟

来自分类Dev

jQuery:防止多次点击?

来自分类Dev

swift-UICollectionView或UIImage-如何防止图像缓存

来自分类Dev

防止图像的本地缓存,以确保安全

来自分类Dev

防止缓存登录信息