国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

淺析JS異步加載進(jìn)度條

2019-11-20 10:09:35
字體:
供稿:網(wǎng)友

展現(xiàn)效果:

1) 當(dāng)點(diǎn)擊Load的時(shí)候,模擬執(zhí)行異步加載. 瀏覽器被遮擋. 進(jìn)度條出現(xiàn).

實(shí)現(xiàn)思路:

1.當(dāng)用戶點(diǎn)擊load button執(zhí)行異步請(qǐng)求. 調(diào)用方法 出現(xiàn)加載條

2.怎么實(shí)現(xiàn)進(jìn)度條呢?

1) 在document.body 新增一個(gè)div.覆蓋瀏覽器. 設(shè)置背景會(huì)灰色. z-index = 999. 加載的時(shí)候讓用戶無法修改界面值

2) 在document.body 新增一個(gè)動(dòng)態(tài)的div.

代碼實(shí)現(xiàn):

Main.html:

<!DOCTYPE html><html><head><meta charset="utf-8"><title></title><script src="Loading.js" charset="utf-8"></script><link rel="stylesheet" href="Loading.css" media="screen" title="no title" charset="utf-8"></head><body><button onclick="showLoading()">Load</button></body></html>

  Loading.js:

function showLoading(){var overDiv = document.createElement("div");var loadingDiv = document.createElement("div");var childDiv1 = document.createElement("div");var childDiv2 = document.createElement("div");var childDiv3 = document.createElement("div");overDiv.classList.add('over');loadingDiv.classList.add('spinner');childDiv1.classList.add('bounce1')childDiv2.classList.add('bounce2')childDiv3.classList.add('bounce3')loadingDiv.appendChild(childDiv1);loadingDiv.appendChild(childDiv2);loadingDiv.appendChild(childDiv3);document.body.appendChild(overDiv);document.body.appendChild(loadingDiv)setTimeout(function(){document.body.removeChild(overDiv);document.body.removeChild(loadingDiv)}, 5000);}

  Loading.css

.spinner {width: 150px;text-align: center;left: 50%;top: 50%;position: absolute;z-index: 1000;}.over {width: 100%;height: 100%;z-index: 998;background-color: gray;position:absolute;top: 0px ;left : 0px;opacity: 0.2;}.spinner > div {width: 30px;height: 30px;background-color: #67CF22;border-radius: 100%;display: inline-block;-webkit-animation: bouncedelay 1.4s infinite ease-in-out;animation: bouncedelay 1.4s infinite ease-in-out;/* Prevent first frame from flickering when animation starts */-webkit-animation-fill-mode: both;animation-fill-mode: both;}.spinner .bounce1 {-webkit-animation-delay: -0.32s;animation-delay: -0.32s;}.spinner .bounce2 {-webkit-animation-delay: -0.16s;animation-delay: -0.16s;}@-webkit-keyframes bouncedelay {0%, 80%, 100% { -webkit-transform: scale(0.0) }40% { -webkit-transform: scale(1.0) }}@keyframes bouncedelay {0%, 80%, 100% {transform: scale(0.0);-webkit-transform: scale(0.0);} 40% {transform: scale(1.0);-webkit-transform: scale(1.0);}}

 總結(jié):

1.可以將方法提出來. 對(duì)Ajax請(qǐng)求重新封裝一次. 實(shí)現(xiàn)調(diào)用Ajax請(qǐng)求的時(shí)候自動(dòng)條用進(jìn)度條方法.

2.如果是Angular的話. Angular提供了方法監(jiān)控http調(diào)用.監(jiān)控http執(zhí)行請(qǐng)求的時(shí)候調(diào)用進(jìn)度條方法就行了.無需在每次執(zhí)行 http調(diào)用.監(jiān)控http執(zhí)行請(qǐng)求的時(shí)候調(diào)用進(jìn)度條方法就行了.無需在每次執(zhí)行http的時(shí)候都去自己調(diào)用出現(xiàn)進(jìn)度條的方法.

以上內(nèi)容是小編給大家介紹的js異步加載進(jìn)度條的相關(guān)內(nèi)容,希望對(duì)大家有所幫助!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 武穴市| 措美县| 孟津县| 利津县| 都安| 石河子市| 千阳县| 枣庄市| 简阳市| 肥城市| 新田县| 麦盖提县| 双柏县| 武宁县| 塔河县| 城步| 高邑县| 凤庆县| 监利县| 正定县| 焦作市| 静安区| 海南省| 鄂托克旗| 成都市| 松江区| 仁布县| 阿勒泰市| 宿迁市| 赣榆县| 蚌埠市| 博兴县| 夏邑县| 宁远县| 泌阳县| 和龙市| 莎车县| 鄂托克前旗| 兴和县| 靖宇县| 玉环县|