我正在开发一个涉及获取大量资产(css,js等)的项目(不是游戏)。在UIWebView(iOS)中打开页面时,有一个空的白页,持续3-5秒,而所有内容都被加载。
我想避免这种情况。我猜我应该添加一个HTML5加载屏幕,但我不知道该怎么做。有什么指针吗?
答案 0 :(得分:1)
我会隐藏内容直到加载,并在此期间使用JS显示加载动画。
用于简单的动画结帐 Simple loading animation in HTML5 canvas
答案 1 :(得分:0)
您可以在HTML5中使用<progress>
元素。有关源代码和现场演示,请参阅此页面。 http://purpledesign.in/blog/super-cool-loading-bar-html5/
这是进度元素......
<progress id="progressbar" value="20" max="100"></progress>
这将从20开始加载。当然只有元素不够。您需要在脚本加载时移动它。为此,我们需要JQuery。这是一个简单的JQuery脚本,它从0到100开始进度,并在定义的时间段内执行某些操作。
<script>
$(document).ready(function() {
if(!Modernizr.meter){
alert('Sorry your brower does not support HTML5 progress bar');
} else {
var progressbar = $('#progressbar'),
max = progressbar.attr('max'),
time = (1000/max)*10,
value = progressbar.val();
var loading = function() {
value += 1;
addValue = progressbar.val(value);
$('.progress-value').html(value + '%');
if (value == max) {
clearInterval(animate);
//Do Something
}
if (value == 16) {
//Do something
}
if (value == 38) {
//Do something
}
if (value == 55) {
//Do something
}
if (value == 72) {
//Do something
}
if (value == 1) {
//Do something
}
if (value == 86) {
//Do something
}
};
var animate = setInterval(function() {
loading();
}, time);
};
});
</script>
将其添加到您的HTML文件中。
<div class="demo-wrapper html5-progress-bar">
<div class="progress-bar-wrapper">
<progress id="progressbar" value="0" max="100"></progress>
<span class="progress-value">0%</span>
</div>
</div>
希望这会给你一个开始。