189 8069 5689

bootstrap中怎么处理缓存问题-创新互联

这期内容当中小编将会给大家带来有关bootstrap中怎么处理缓存问题,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

成都创新互联公司2013年开创至今,先为文安等服务建站,文安等地企业,进行企业商务咨询服务。为文安企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

1、在关闭的时候清除数据:

 $("#myModal").on("hidden.bs.modal", function () {        $(this).removeData("bs.modal");    });

2、修改请求的URL,在请求的URL上加上时间戳。

function remoteUrl(u){u += '&t=' + Math.random(1000)    $.get(u, '', function(data){        $('#remoteModal .modal-body').html(data)    })    $('#remoteModal').modal({show:true,backdrop:false})}

上边的两个解决办法确实有效,但在IE中,第1种方法无效,第2种方法解决起来太繁琐。

我又百度到了另一种解决办法,专门针对IE的:

[OutputCache(NoStore = true, Duration = 0, VaryByParam = "*")]//不加的话,IE缓存会捣乱

该办法是要在服务器端给每个action加上,这样的话,这需要加多少action,那位作者居然嫌弃IE太垃圾了应该退出互联网界。

好了,吐糟完了,来上我的解决办法:直接修改bootstrap.js文件

位置在大约在1068行的位置,如下代码:

 $(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e) {    var $this   = $(this)    var href    = $this.attr('href')    var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7    var remoteUrl = !/#/.test(href) && href    if (remoteUrl == undefined) {        remoteUrl = "";    }    if (remoteUrl.indexOf("?") > -1) {        remoteUrl += "&" + (new Date()).valueOf()    }    else {        remoteUrl += "?" + (new Date()).valueOf()    }    //var option  = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())    //上边的是原代码,增加了remoteUrl来解决IE下缓存的问题    var option = $target.data('modal') ? 'toggle' : $.extend({ remote: remoteUrl }, $target.data(), $this.data())    e.preventDefault()    $target      .modal(option, this)      .one('hide', function () {        $this.is(':visible') && $this.focus()      })  })

注释已经说明了解决办法,我只是增加了remoteUrl,在请求的url后加上时间,这样就不用一个一个的修改,也能兼顾各个浏览器了。

上述就是小编为大家分享的bootstrap中怎么处理缓存问题了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。


分享文章:bootstrap中怎么处理缓存问题-创新互联
URL网址:http://cdxtjz.cn/article/cdjsce.html

其他资讯