javascript - 预加载大型 JSON 文件

标签 javascript json caching preload

我有一个双页注册 channel ,其中第二页需要一个相当大的 JSON 文件 (400Kb) 作为自动完成字段。直接为页面加载文件会导致用户体验出现微小但潜在破坏性的延迟,因此我考虑在第一页上预加载 JSON,并将其缓存并为第二页做好准备。

仅出于缓存目的预加载 JSON 文件的首选/优雅方式是什么?根据can-i-use link rel=preload 尚没有良好的浏览器支持。

最佳答案

我能想到的最简单的解决方案是在第一页中加载它,如果在加载 DOM 之后完成,该页面将不会出现中断。

这样,它将被缓存,并且在调用第二页时应该立即加载

<head>
    <script>
        (function(d) {
            d.addEventListener('DOMContentLoaded', function() {
                var s = d.createElement('script');
                s.setAttribute('type', 'text/javascript');
                s.setAttribute('src', json.js);
                s.setAttribute('defer', true);
                d.head.appendChild(s);
            })
        })(document);
    </script>
</head>

关于javascript - 预加载大型 JSON 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49334822/

相关文章:

javascript - 在工厂类中实现继承,而无需在 Javascript 中复制代码

javascript - Node.js 中的 declare var 是什么?

java - 这里如何使用Gson将列表发送回jsp页面?

xcode - xcode sqlite3删除数据库错误

JavaScript 数组映射,同时保留数组中的原始元素

javascript - 为什么这个 hover addClass 不起作用?

json - Neo4j/Cypher - 返回带有链接节点的嵌套 JSON 对象

javascript - 将 Post 数据从 python 发送到 django

javascript - 谷歌浏览器中的 ERR_CACHE_READ_FAILURE

android - ios和html5应用缓存测试