javascript – D3.json将缓存设置为false

前端之家收集整理的这篇文章主要介绍了javascript – D3.json将缓存设置为false前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我注意到用json调用(d3.json)重绘D3元素不希望在IE9上更新.原因是json调用被缓存,因此浏览器不会在新数据传递时注册.正常jQuery ajax调用解决方法是将其属性设置为cache:false,全局用于所有ajax调用
$.ajaxSetup({ cache: false });

但是如何将它添加到d3.json调用中,因为它使用自己的方法调用ajax?我成功地在路径后面添加了当前时间戳:

var noCache = new Date().getTime();
d3.json(data + "?_=" + noCache)

但这样做有点蹩脚……任何建议我怎么能做到这一点?或者更好的是,如果IE正在运行,如何设置这个:)

解决方法

我遇到过同样的问题.
我通过将此代码添加到html文档的HEAD中来解决它.
<Meta http-equiv="cache-control" content="no-cache"> 
<Meta http-equiv="expires" content="0"> 
<Meta http-equiv="pragma" content="no-cache">

但是,这将阻止某个页面中每个对象的缓存,因此请小心使用图像,字体等.

猜你在找的JavaScript相关文章