预加载库图像.JavaScript(没有JQuery)
Preloading gallery images. JavaScript (without JQuery)
我正在尝试一些大文件大小的图像,以便在画廊中使用。我正在尝试以最简单的方式做到这一点。在这里,我只使用几个示例图像:
var imageGallery = ["nebula.jpg", "galaxy.jpg", "blackHole.jpg"];
for (var i = 0; i < imageGallery.length - 1; i++) {
var img = new Image();
img.src = imageGallery[i];
}
我知道这段代码将确保图像在被脚本的其余部分使用之前被缓存,但它不起作用。
帮助将不胜感激。
你正在寻找某种异步回调,你必须做这样的事情:
// Grab reference to image on page
var img = document.getElementById("blah"); // Or whatever you need to do
// Create new image from your list
var galleryImage = new Image();
// Create a callback that will start once you assign the src attribute to img
galleryImage.onload = function() {
// Here you could disable a loading icon or something, because your image is ready to go
img.src = this.src;
}
// Kickoff everything
galleryImage.src = "www.myimage.com/path";
在您的代码中,可能如下所示:
var imageGallery = ["nebula.jpg", "galaxy.jpg", "blackHole.jpg"];
for (var i = 0; i < imageGallery.length - 1; i++) {
var img = document.document.getElementsByTagName('img')[i];
var galleryImage = new Image();
galleryImage.onload = function() {
img.src = this.src;
}
galleryImage.src = imageGallery[i];
}
也许服务器正在发送阻止缓存的标头,例如:
Cache-Control: no-cache, no-store, must-revalidate
Pragma: no-cache
Expires: 0
相关文章:
- 在Widget代码中没有jQuery的情况下,用光标图像从左滑动到右
- 如何在javascript中找到分配给元素的类(没有jQuery)
- 如何在没有jquery的情况下使用Papa Parse
- -webkit转换在JavaScript旋转动画中不起作用(没有JQuery)
- 有人知道有没有jquery插件可以在图像上写文本,并让用户将其放置在图像内的任何位置
- 如何在没有jQuery的情况下模拟按名称命名的事件或解除单个事件的绑定
- 如何在没有表单提交、没有js、没有jquery和没有ajax的情况下将输入的文本框值存储到php变量中
- 如何用javascript发送多个文件没有jQuery我想要每个文件一个进度条
- 如果视图中没有Jquery脚本引用,Unobtrusive Javascript Validation是不起作用的
- 如何在没有JQuery的情况下正确实现无限滚动的AngularJS表
- 如何在没有JQuery的情况下在Javascript中获取文件的内容
- Javascript 滑动图片库 - 没有 jQuery
- Sidr.js相当于没有jQuery的AngularJS
- 如何在没有JQuery的情况下,通过对服务器的基本ajax调用,根据浏览器上的用户活动保持服务器会话活动
- 如何使用AJAX打印PHP POST数据?(没有jQuery)
- Javascript在没有jQuery的情况下获取X父节点
- 如何将DOM元素扩展为类(没有jQuery)
- 如果检查了输入,则将类应用于<身体>,没有jQuery
- 使用ajax提交邮件表单的正确方法?-没有JQuery
- 在没有 jquery 的情况下更改子节点(父节点具有 ID)中的链接文本