1. 程式人生 > >JS實現頁面載入完畢之前loading提示效果

JS實現頁面載入完畢之前loading提示效果

做成js呼叫:


base-loading.js程式碼

/*******************************************
 * 
 * 建立人:Quber([email protected])
 * 建立時間:2014年6月10日
 * 建立說明:Base=>頁面載入(loading)效果
 * 
 * 修改人:
 * 修改時間:
 * 修改說明:
 * 
*********************************************/

//獲取瀏覽器頁面可見高度和寬度
var _PageHeight = document.documentElement.clientHeight,
    _PageWidth = document.documentElement.clientWidth;
//計算loading框距離頂部和左部的距離(loading框的寬度為215px,高度為61px)
var _LoadingTop = _PageHeight > 61 ? (_PageHeight - 61) / 2 : 0,
    _LoadingLeft = _PageWidth > 215 ? (_PageWidth - 215) / 2 : 0;
//在頁面未載入完畢之前顯示的loading Html自定義內容
var _LoadingHtml = '<div id="loadingDiv" style="position:absolute;left:0;width:100%;height:' + _PageHeight + 'px;top:0;background:#f3f8ff;opacity:1;filter:alpha(opacity=80);z-index:10000;"><div style="position: absolute; cursor1: wait; left: ' + _LoadingLeft + 'px; top:' + _LoadingTop + 'px; width: auto; height: 57px; line-height: 57px; padding-left: 50px; padding-right: 5px; background: #fff url(Image/loading.gif) no-repeat scroll 5px 10px; border: 2px solid #95B8E7; color: #696969; font-family:\'Microsoft YaHei\';">頁面載入中,請等待...</div></div>';
//呈現loading效果
document.write(_LoadingHtml);

//window.onload = function () {
//    var loadingMask = document.getElementById('loadingDiv');
//    loadingMask.parentNode.removeChild(loadingMask);
//};

//監聽載入狀態改變
document.onreadystatechange = completeLoading;

//載入狀態為complete時移除loading效果
function completeLoading() {
    if (document.readyState == "complete") {
        var loadingMask = document.getElementById('loadingDiv');
        loadingMask.parentNode.removeChild(loadingMask);
    }
}


一、JS程式碼:

//獲取瀏覽器頁面可見高度和寬度
        var _PageHeight = document.documentElement.clientHeight,
            _PageWidth = document.documentElement.clientWidth;
        //計算loading框距離頂部和左部的距離(loading框的寬度為215px,高度為61px)
        var _LoadingTop = _PageHeight > 61 ? (_PageHeight - 61) / 2 : 0,
            _LoadingLeft = _PageWidth > 215 ? (_PageWidth - 215) / 2 : 0;
        //在頁面未載入完畢之前顯示的loading Html自定義內容
        var _LoadingHtml = '<div id="loadingDiv" style="position:absolute;left:0;width:100%;height:' + _PageHeight + 'px;top:0;background:#f3f8ff;opacity:0.8;filter:alpha(opacity=80);z-index:10000;"><div style="position: absolute; cursor1: wait; left: ' + _LoadingLeft + 'px; top:' + _LoadingTop + 'px; width: auto; height: 57px; line-height: 57px; padding-left: 50px; padding-right: 5px; background: #fff url(/Content/loading.gif) no-repeat scroll 5px 10px; border: 2px solid #95B8E7; color: #696969; font-family:\'Microsoft YaHei\';">頁面載入中,請等待...</div></div>';
        //呈現loading效果
        document.write(_LoadingHtml);
 
        //window.onload = function () {
        //    var loadingMask = document.getElementById('loadingDiv');
        //    loadingMask.parentNode.removeChild(loadingMask);
        //};
 
        //監聽載入狀態改變
        document.onreadystatechange = completeLoading;
 
        //載入狀態為complete時移除loading效果
        function completeLoading() {
            if (document.readyState == "complete") {
                var loadingMask = document.getElementById('loadingDiv');
                loadingMask.parentNode.removeChild(loadingMask);
            }
        }

二、效果:


說明: 將此段js程式碼放入<head>最後即可; 其中loading效果的樣式可以根據自己的風格修改,loading.gif這個圖片需要自己找(網上很多的)。

Demo下載地址:


引用:http://qubernet.blog.163.com/blog/static/1779472842014510392573/

相關推薦

簡單實用的JS實現頁面載入完畢之前loading提示效果(相容性較強的loading載入程式碼)

一種簡單實用的JS實現頁面載入完畢之前loading提示效果 做成js呼叫即可: 一、JS程式碼: var _PageHeight = document.documentElement.clientHeight, _PageWidth = documen

JS實現頁面載入完畢之前loading提示效果

做成js呼叫: base-loading.js程式碼 /******************************************* * * 建立人:Quber([email protected]) * 建立時間:2014年6月10日 *

JS實現頁面載入結束之前Loading提示效果

//獲取瀏覽器頁面可見高度和寬度 var _PageHeight = document.documentElement.clientHeight,     _PageWidth = document.documentElement.clientWidth; //計算loa

JS實現頁面載入完成之後自動重新整理一次

        先貼出程式碼,如果有興趣看我解題思路的可以看下,沒興趣的直接拿走用,節省時間。        window.onload = function(){var url=document.location.href;  //獲取瀏覽器訪問欄裡的地址       

原生js檢測頁面載入完畢的方法

原生js的頁面載入完畢的使用方法為 window.onload=function(){ //somecode } 在jquery的影響下的錯誤寫法為: window.onload(func

淺談前端實現頁面載入進度條以及 nprogress.js實現

以前在 Vue 的專案用了 nprogress 這個外掛,一直對於其如何得知載入進度充滿好奇,最近又看到了「前端如何實現頁面載入進度條」這個問題,今天週六恰好一探究竟。以下僅為一家之言,如有異議,歡迎指出。 前端的頁面載入進度條有兩種 首先不得不說,前端的頁面載入進度條其實有兩種,所以你得先搞清楚說的是哪

在HTML頁面載入完畢後執行某個js

在DOM載入完就可以執行(比window.onload更早)。在同一頁面中可以多次出現.ready() 兩者主要區別:Window.onload=function (){}: 當一個文件完全下載到瀏覽器中時,才會觸發window.onload事件。這意味著頁面上的全部元素對js而言都是可以操

HTML頁面載入完畢後執行某個js

1、js方法: <script type="text/javascript"> window.onload=function(){ alert("html頁面載入完成後一"); } </script> 2、jQuery方法:(需要引用j

JS頁面載入完畢後執行的多種方式和比較

做專案的時候可能會遇到這種情況:   一個頁面的中定義了多個onload事件,那麼在此定義window.onload函式的時候可能會不生效或者多個onload之間覆蓋的現象.   有的朋友肯定會說用jQuery的$$(document).ready(func

兩種方法實現在HTML頁面載入完畢後執行某個js

Js方法:<script type=”text/javascript”> window.onload=function (){ var userName=”xiaoming”; alert(userName); } </script&

JS_實現頁面載入完再執行JS程式碼

1 在body中用onload: <body onload="myfunction()"> 2 在指令碼中用window.onload: <script type="text/javascript"> function myfun() { alert("this window

如是使用JS實現頁面內容隨機顯示

js之前有個客戶咨詢我,因為他們公司的業務員有多個人,但公司網站的聯系方式板塊裏只夠放一個人的信息,所以就想能不能實現這個聯系方式信息隨機顯示,對於業務或客服人員來說也能做到分配均勻公平。本文我們將和大家一起分享,如何使用js控制實現頁面內容隨機顯示。這裏我以本地的蟬知建站系統為例,給大家演示一下實現流程。首

用wow.js實現頁面滾動時觸發animate.css動畫特效

偏移量 true fin 滾動 cdn lock src 代碼 splay     很高興在2017/10/14發表了自己的第一個博客隨筆,不管你們怎麽想,我自己覺得逼格瞬間高了起來。哈哈哈,哈撒尅。 有時候項目需要一些動畫來提升用戶體驗,吸引用戶註意力。這時wow是個

vue.js實現頁面倒計時跳轉功能

his 首頁 turn return () data col world mit 需求分析: 頁面倒計時5秒後進入系統主頁,數字需要實時更新! <template> <div class=""> <h1>歡迎來到Vue.js

js實現頁面跳轉的幾種方式

head 註意 ont rem text pla http bsp cat 通過js或者html或者PHP等動態程序都可以方便的實現跳轉,這裏搜集了幾種頁面跳轉的方式js方式的頁面跳轉1.window.location.href方式 <script langua

使用typed.js實現頁面上的寫字功能

1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <script src="https://cdn.bootcss.com/jq

JS實現頁面列印(整體、區域性)

我們在網頁開發過程中經常會有列印頁面的需求,通過JS來實現的方法有很多,這裡我做了一個整理,供大家參考。 方式一:window.print() 整體列印 ?

js實現頁面日期時間的動態顯示,精確到秒

直接寫程式碼 <script type="text/javascript"> window.onload=showtime(); function gettime(){ var date = new Date(); var

jQueryAjax++servlet+json實現頁面載入時從後臺讀取資料

在eclipse中新建一個專案,我起名為Demo 新建一個html檔案,在其中引入外部jQuery和自定義的js檔案 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <sc

CSS3實現頁面載入進度條

什麼情況下會使用到頁面載入進度條? 當頁面中的需要載入的內容很多,使用者直接進入則看不到任何內容,體驗不好,這個時候就需要使用到頁面載入的一個動畫,在頁面載入結束後再 顯示主體內容。 實現頁面載入進度條有哪幾種方式? 一般可分為兩種, 1.設定多少時間後顯示頁面, 2.根據頁面載入的文件狀態來實現