JS實(shí)現(xiàn)的自定義顯示加載等待圖片插件(loading.gif)
本文實(shí)例講述了JS實(shí)現(xiàn)的自定義顯示加載等待圖片插件。分享給大家供大家參考,具體如下:
在工作中遇到了一個(gè)問(wèn)題 —— 某個(gè)業(yè)務(wù)流程分為幾個(gè)階段,每個(gè)階段如果在數(shù)據(jù)沒(méi)有顯示出來(lái)之前就要顯示加載圖片loading.gif文件,如果有數(shù)據(jù)了就消失。為此,自己寫了一個(gè)方法,方便整個(gè)工程使用。
<button onclick="show()">show</button> <button onclick="hide()">hide</button> <script> //創(chuàng)建加載對(duì)象 var obj = new loadingImg(); //顯示加載圖片 function show(){ obj.show(); } //隱藏加載圖片 function hide(){ obj.hide(); } //加載圖片方法(對(duì)象) function loadingImg(mySetting){ var that = this; if(mySetting == "" || mySetting == undefined || typeof mySetting != "object"){ mySetting = {}; } //使用時(shí)間戳作為空間的ID var targetID = new Date().getTime(); this.setting = { //插入圖片的容器,使用jquery的查詢方式傳入?yún)?shù) targetConater : "", //使用圖片的地址 imgUrl : "../img/loading.gif", //圖片顯示的 寬度 imgWidth : "32px", //圖片的默認(rèn)樣式 imgClass : "", //生成控件的ID "targetID" : targetID, //顯示之前的回調(diào)函數(shù) beforeShow : function(plugin){ }, //顯示之后的回調(diào)函數(shù) afterShow : function(plugin,targetID){ } } this.setting = $.extend(this.setting, mySetting); //獲取屏幕的寬度 this.getScreenWidth = function(){ return document.documentElement.clientWidth; } //獲取屏幕的高度 this.getScreenHeight = function (){ return document.documentElement.clientHeight; } //顯示控件 this.show = function(){ $("#" + that.setting.targetID).show(); } //隱藏控件 this.hide = function(){ $("#" + that.setting.targetID).hide(); } this.init = function(){ //顯示之前執(zhí)行回調(diào)函數(shù) if(typeof that.setting.beforeShow == "function"){ that.setting.beforeShow(that); } //存放字符串的變量 var targetHTML = ''; //將內(nèi)容存放到指定的容器中,默認(rèn)存放到body最底部 if(that.setting.targetConater != "" && this.setting.targetConater != undefined){ targetHTML = '<img src="' + that.setting.imgUrl + '" class="' + that.setting.imgClass + '" id="' + that.setting.targetID + '" style="display:none;">'; $(that.setting.targetConater).html(targetHTML); }else{ targetHTML = '<img src="' + that.setting.imgUrl + '" class="' + that.setting.imgClass + '">'; targetHTML = '<div id="' + that.setting.targetID + '" style="display:none;position: absolute;top:50%;left: 50%;height: ' + that.getScreenHeight()+';width:'+that.getScreenWidth()+'">' + targetHTML + '</div>'; $("body").append(targetHTML); } //判斷用戶是否自定義了圖片的寬度 if(that.setting.imgWidth != "" && that.setting.imgWidth.indexOf("px")>0 ){ $("#"+targetID).css("width",that.setting.imgWidth); } //顯示之后執(zhí)行回調(diào)函數(shù) if(typeof that.setting.afterShow == "function"){ that.setting.afterShow(that,targetID); } } this.init(); } </script>
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript切換特效與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript動(dòng)畫特效與技巧匯總》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
- 關(guān)于JavaScript中異步/等待的用法與理解
- 利用 spin.js 生成等待效果(js 等待效果)
- JS設(shè)置手機(jī)驗(yàn)證碼60s等待實(shí)現(xiàn)代碼
- 自己動(dòng)手寫的javascript前端等待控件
- JavaScript自定義等待wait函數(shù)實(shí)例分析
- 為JavaScript提供睡眠功能(sleep) 自編譯JS引擎
- javascript 使用sleep函數(shù)的常見(jiàn)方法詳解
- js中自定義方法實(shí)現(xiàn)停留幾秒sleep
- javascript中不提供sleep功能如何實(shí)現(xiàn)這個(gè)功能
- 如何使JavaScript休眠或等待
相關(guān)文章
Javascript document.referrer判斷訪客來(lái)源網(wǎng)址
用簡(jiǎn)單幾行的javascript,就可抓到使用的來(lái)源,以及作出一些防范的措施。2009-12-12微信小程序掃描普通二維碼跳轉(zhuǎn)到小程序指定頁(yè)面操作方法
這篇文章主要給大家介紹了關(guān)于微信小程序掃描普通二維碼跳轉(zhuǎn)到小程序指定頁(yè)面操作的相關(guān)資料,為了分享方便,或者制作宣傳海報(bào)之類的,經(jīng)常需要用到微信小程序指定頁(yè)面的二維碼,讓用戶掃碼直達(dá)頁(yè)面,需要的朋友可以參考下2023-08-08JS判斷元素是否在數(shù)組內(nèi)的實(shí)現(xiàn)代碼
這篇文章主要介紹了JS判斷元素是否在數(shù)組內(nèi)的實(shí)現(xiàn)代碼,需要的朋友可以參考下2016-03-03JS Testing Properties 判斷屬性是否在對(duì)象里的方法
下面小編就為大家?guī)?lái)一篇JS Testing Properties 判斷屬性是否在對(duì)象里的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-10-10微信小程序?qū)崿F(xiàn)監(jiān)聽(tīng)頁(yè)面滾動(dòng)
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)監(jiān)聽(tīng)頁(yè)面滾動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-06-06JS實(shí)現(xiàn)控制表格只顯示行邊框或者只顯示列邊框的方法
這篇文章主要介紹了JS實(shí)現(xiàn)控制表格只顯示行邊框或者只顯示列邊框的方法,涉及javascript使用表格對(duì)象的rules屬性的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03微信小程序自定義toast實(shí)現(xiàn)方法詳解【附demo源碼下載】
這篇文章主要介紹了微信小程序自定義toast實(shí)現(xiàn)方法,簡(jiǎn)單描述了微信小程序自帶toast使用方法,并結(jié)合實(shí)例形式分析了自定義toast的定義與使用方法,需要的朋友可以參考下2017-11-11JS實(shí)現(xiàn)單擊輸入框彈出選擇框效果完整實(shí)例
這篇文章主要介紹了JS實(shí)現(xiàn)單擊輸入框彈出選擇框效果的方法,涉及JavaScript響應(yīng)鼠標(biāo)事件動(dòng)態(tài)操作頁(yè)面元素與相關(guān)屬性的實(shí)現(xiàn)技巧,需要的朋友可以參考下2015-12-12