【发布时间】:2015-09-29 07:40:50
【问题描述】:
所以我正在为我的漫画开发一个阅读器,由于图片需要一些时间来下载,我想预加载它们。这样做意味着必须创建一个进度来显示正在下载的页面的进度,然后读者才能开始阅读它。我已经设置好了,你可以在这个链接上看到here
我想知道是否有一个简单的轻量级代码可以用来改进。我正在考虑使用 Pace.JS,但如果有更轻量级的简单替代方案,那么我更愿意这样做,因为我还想了解 ProgressBar 的工作原理,也许还想改进它并了解更多信息:D
如果您检查上面提供的链接,它会显示带有我将在下面实现的代码的页面。页面加载后,我将 jquery 隐藏加载 div。如果可能的话,是否有办法同时更改下载栏旁边的文本?
抱歉这么多问题,还在学习中>~
HTML
<div id="loading">
<img id="loading_logo" class="animated infinite bounce" src="source_images/new_logo_compressed.png" />
<div id="progressbar">
<div></div>
</div>
<div class="text">Loading... 30%</div>
</div>
<a href="#" id="left" class="button hvr-icon-back"><div id="button_text">Next Page</div></a>
<a href="#" id="right" class="button hvr-icon-forward"><div id="button_text">Last Page</div></a>
<div >
<img id="manga" src="source_images/00.jpg" />
</div>
CSS
#loading {
background-color: black;
opacity: 0.75;
position: fixed;
z-index:1;
height:100%;
width:100%;
}
#loading_logo {
display: block;
margin-left: auto;
margin-right: auto;
padding-top: 30vh;
padding-bottom: 5vh;
width: 20vw;
}
#progressbar {
border: 3px solid #fff;
border-radius: 20px;
padding: 2px;
margin-left: 20vw;
margin-right: 20vw;
}
#progressbar > div {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
background-color: #fff;
width: 30%;
height: 18px;
border: 1px solid rgba(0, 0, 0, 0);
border-radius: 20px;
}
.text {
color: #fff;
margin-top: 15px;
font-size: 21px;
font-weight: bold;
text-align: center;
}
Jquery(让阅读器工作)
var count = 0;
var images = ["source_images/00.jpg", "source_images/01.jpg", "source_images/02.jpg", "source_images/03.jpg", "source_images/04.jpg", "source_images/05.jpg", "source_images/06.jpg"];
// Preloading Images
$.preloadImages = function() {
for (var i = 0; i < arguments.length; i++) {
$("<img />").attr("src", arguments[i]);
}
}
$.preloadImages("source_images/00.jpg", "source_images/01.jpg", "source_images/02.jpg", "source_images/03.jpg", "source_images/04.jpg", "source_images/05.jpg", "source_images/06.jpg");
$(function manga () {
$("#left").click(function () {
++count;
var img = images[count % images.length];
//alert(img);
$("#manga").attr("src", img);
//alert("clicked");
//manga();
});
$("#right").click(function () {
if(count == 0)
{
count = images.length-1;
}
else {
--count;
}
var img = images[count % images.length];
//alert(img);
$("#manga").attr("src", img);
//alert("clicked");
//manga();
});
//manga();
});
【问题讨论】:
标签: javascript jquery html css css-transitions