gpt4 book ai didi

java - 在后台缓存 CSS 和 Javascript 或从应用程序加载它们

转载 作者:太空宇宙 更新时间:2023-11-03 18:38:45 26 4
gpt4 key购买 nike

我的应用程序将 Webview 用于具有大量 CSS 和 Javascript(大约 0.5 MB)的网站。是否可能:

  • 在用户打开之前缓存所有的 CSS 和 Javascript应用?

  • 如果没有,也许可以缓存 CSS 和 Javascript用户打开后很长时间(因为它很少更改)第一次申请?

  • 或者也许可以将 .js 和 .css 文件放入 Android文件夹,所以它会从文件中加载它而不是连接到服务器?

最佳答案

一种方法是使用 HTML5 localStorage。像这样的东西(未经测试):

function loadScripts() {
var scriptURL = '/myscript.js',
cssURL = '/mycss.css',
jsXHR,
cssXHR;

var applyStyleAndScript = function(styleText, scriptText) {
var styleTag = document.createElement('style'),
scriptTag = document.createElement('script');

styleTag.innerText = styleText;
document.body.appendChild(styleTag);

scriptTag.innerText = jsText;
document.body.appendChild(scriptTag);
}

if (localStorage && localStorage[scriptURL] && localStorage[cssURL]) {
applyStyleAndScript(localStorage[cssURL], localStorage[scriptURL]);
} else {
cssXHR = new XMLHttpRequest();
jsXHR = new XMLHttpRequest();

cssXHR.open('GET', cssURL);
cssXHR.onload = function(e) {
var cssText = e.target.responseText;

if (localStorage) localStorage[cssURL] = cssText;

jsXHR.open('GET', scriptURL);
jsXHR.onload = function(e) {
var jsText = e.target.responseText;

if (localStorage) localStorage[scriptURL] = jsText;

applyStyleAndScript(cssText, jsText);
}

jsXHR.send();
}

cssXHR.send();
}
}

关于java - 在后台缓存 CSS 和 Javascript 或从应用程序加载它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18111232/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com