如何使用PreloadJS加载图片资源
短信预约 -IT技能 免费直播动态提醒
这篇文章主要介绍如何使用PreloadJS加载图片资源,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
一. 使用createjs里的LoadQueue函数实现异步加载图片,监听加载进度
1.实例对象LoadQueue加载队列对象
var queue = new createjs.LoadQueue(false);
2.需要监听常用到的三个方法
//监听进度事件
queue.on("progress", function (e) {
});
//监听加载事件
queue.on("fileload", function (e) {
});
//监听完成事件
queue.on("complete", function (e) {
});
3.实现监听进度
html代码:
<h3>loading...<span id="progress">0%</span></h3>
js代码:
//监听进度事件
queue.on("progress", function(e){
var proNum = Math.ceil(e.progress * 100);
$("#progress").html( proNum + "%");
});
4.添加加载资源
//加载单个图片
queue.loadFile("images/arrow.png");
//加载单个图片,带id
queue.loadFile({id: "img1", class="lazy" data-src:"images/slide3-bg.png"});
//加载多个文件,指定目录下
queue.loadManifest([
"slide1-bg.png",
"slide2-bg.png",
"slide3-bg.png"
], true, "images/");
5.获取加载完的资源
queue.on("fileload", function (e) {
document.body.appendChild(e.result);
});
二:完整的代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>PreloadJs加载图片</title>
</head>
<body>
<div id="img"></div>
<h3>loading...<span id="progress">0%</span></h3>
<script class="lazy" data-src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script class="lazy" data-src="https://cdn.bootcss.com/PreloadJS/1.0.1/preloadjs.min.js"></script>
<script>
var queue = new createjs.LoadQueue(false);
//监听进度事件
queue.on("progress", function(e){
var proNum = Math.ceil(e.progress * 100);
$("#progress").html( proNum + "%");
});
//监听完成事件
queue.on("complete", function(){
console.log("加载完成");
console.log(queue.getResult("img1"));
});
//加载单个图片
queue.loadFile("images/arrow.png");
//加载单个图片,带id
queue.loadFile({id: "img1", class="lazy" data-src:"images/slide3-bg.png"});
//加载多个文件,指定目录下
queue.loadManifest([
"slide1-bg.png",
"slide2-bg.png",
"slide3-bg.png"
], true, "images/");
queue.on("fileload", function (e) {
document.body.appendChild(e.result);
});
</script>
</body>
</html>
以上是“如何使用PreloadJS加载图片资源”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网行业资讯频道!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341