JS Loading功能的簡(jiǎn)單實(shí)現(xiàn)
我們經(jīng)常在瀏覽網(wǎng)頁(yè)的時(shí)候會(huì)看到數(shù)據(jù)在加載時(shí),出現(xiàn)的LOADING提示。其實(shí)這個(gè)功能原理是很簡(jiǎn)單的,就是一個(gè)DIV遮蓋當(dāng)前頁(yè)面,然后Loading就在遮蓋DIV層上展示出來(lái),現(xiàn)在我們來(lái)動(dòng)手實(shí)現(xiàn)一下。
1.當(dāng)前頁(yè)面:
<div class="current"><a href="#" onclick="showLoading()">Loading</a></div>
2.遮罩層:
<div id="over" class="over"></div>
3.Loading展示層:
<div id="layout" class="layout"><img src="http://img.jbzj.com/file_images/article/201311/2013112931.gif" alt="" /></div>
整體代碼:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style type="text/css">
.current a {
font-size: 20px;
}
.over {
display: none;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #f5f5f5;
opacity:0.5;
z-index: 1000;
}
.layout {
display: none;
position: absolute;
top: 40%;
left: 40%;
width: 20%;
height: 20%;
z-index: 1001;
text-align:center;
}
</style>
<script type="text/javascript">
function showLoading()
{
document.getElementById("over").style.display = "block";
document.getElementById("layout").style.display = "block";
}
</script>
</head>
<body>
<div class="current"><a href="#" onclick="showLoading()">Loading</a></div>
<div id="over" class="over"></div>
<div id="layout" class="layout"><img src="http://img.jbzj.com/file_images/article/201311/2013112931.gif" alt="" /></div>
</body>
</html>
最終效果:

在網(wǎng)上還看到另外一種實(shí)現(xiàn)方式,感覺(jué)思路不錯(cuò),就是利用JS不斷的改變html標(biāo)簽的value值,達(dá)到加載提示的效果,根據(jù)他的思路我自己實(shí)現(xiàn)了下,代碼如下:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<!-- <script src="Scripts/jquery-1.8.2.js"></script>-->
<style type="text/css">
#tb {
width: 100%;
height: 100%;
line-height: 10px;
}
#tb tr td {
text-align: center;
}
.progressbar {
font-family: Arial;
font-weight: bolder;
color: gray;
background-color: white;
padding: 0px;
border-style: none;
}
.percent {
font-family: Arial;
color: gray;
text-align: center;
border-width: medium;
border-style: none;
}
</style>
<script type="text/javascript">
var bar = 0;
var step = "||";
/*
*第一種方式即 :$(document).ready(function(){.....});
*/
//$(function () {
// progress();
//});
/*
*第二種方式
*/
//window.onload = function () {
// progress();
//}
/*
*第三種方式模擬 $(document).ready(function(){.....});
*/
(function () {
var ie = !!(window.attachEvent && !window.opera);
var wk = /webkit\/(\d+)/i.test(navigator.userAgent) && (RegExp.$1 < 525);
var fn = [];
var run = function () { for (var i = 0; i < fn.length; i++) fn[i](); };
var d = document;
d.ready = function (f) {
if (!ie && !wk && d.addEventListener)
return d.addEventListener('DOMContentLoaded', f, false);
if (fn.push(f) > 1) return;
if (ie)
(function () {
try { d.documentElement.doScroll('left'); run(); }
catch (err) { setTimeout(arguments.callee, 0); }
})();
else if (wk)
var t = setInterval(function () {
if (/^(loaded|complete)$/.test(d.readyState))
clearInterval(t), run();
}, 0);
};
})();
document.ready(function () {
progress();
});
function progress() {
bar = bar + 2;
step = step + "||";
document.getElementById("percent").value = bar + "%";
document.getElementById("progressbar").value = step;
if (bar <= 98) {
setTimeout("progress()", 100);
}
}
</script>
</head>
<body>
<table id="tb">
<tr>
<td>
<input type="text" size="50" class="percent" id="percent" /></td>
</tr>
<tr>
<td>
<input type="text" size="50" class="progressbar" id="progressbar" /></td>
</tr>
</table>
</body>
</html>
最終效果:

- JavaScript實(shí)現(xiàn)網(wǎng)頁(yè)加載進(jìn)度條代碼超簡(jiǎn)單
- jquery插件NProgress.js制作網(wǎng)頁(yè)加載進(jìn)度條
- Angularjs注入攔截器實(shí)現(xiàn)Loading效果
- 原生JS實(shí)現(xiàn)LOADING效果
- javascript制作loading動(dòng)畫效果 loading效果
- js loading加載效果實(shí)現(xiàn)代碼
- 很酷的javascript loading效果代碼
- Listloading.js移動(dòng)端上拉下拉刷新組件
- JS 非圖片動(dòng)態(tài)loading效果實(shí)現(xiàn)代碼
- javascript實(shí)現(xiàn)一個(gè)網(wǎng)頁(yè)加載進(jìn)度loading
相關(guān)文章
Varlet組件實(shí)現(xiàn)一個(gè)絲滑的點(diǎn)擊水波效果詳解
這篇文章主要為大家介紹了Varlet組件實(shí)現(xiàn)一個(gè)絲滑的點(diǎn)擊水波效果示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10微信小程序登錄時(shí)如何獲取input框中的內(nèi)容
這篇文章主要介紹了微信小程序登錄時(shí)如何獲取input框中的內(nèi)容,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12一文帶你簡(jiǎn)單封裝JS下的異步任務(wù)對(duì)象
我們?cè)跓倪^(guò)程中去干了別的事情,就屬于異步模式,異步模式中不會(huì)等待異步任務(wù)的結(jié)束才開始執(zhí)行下一個(gè)同步的任務(wù),都是開啟過(guò)后就立即執(zhí)行下一個(gè)任務(wù),下面這篇文章主要給大家介紹了如何通過(guò)一文帶你簡(jiǎn)單封裝JS下的異步任務(wù)對(duì)象的相關(guān)資料,需要的朋友可以參考下2022-11-11js實(shí)現(xiàn)的類marquee水平循環(huán)滾動(dòng)
marquee (水平)循環(huán)滾動(dòng)的js實(shí)現(xiàn) ,需要的朋友可以參考下。2010-03-03js模仿windows桌面圖標(biāo)排列算法具體實(shí)現(xiàn)(附圖)
需要引入Jquery,如果需要全部功能,請(qǐng)引入jquery-ui和jquery-ui.css,具體實(shí)現(xiàn)步驟如下,感興趣的朋友可以參考下哈2013-06-06JavaScript基于SVG的圖片切換效果實(shí)例代碼
這篇文章主要介紹了JavaScript基于SVG的圖片切換效果實(shí)例代碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12關(guān)于function類中定義變量this的簡(jiǎn)單說(shuō)明
下面小編就為大家?guī)?lái)一篇關(guān)于function類中定義變量this的簡(jiǎn)單說(shuō)明。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-05-05