jquery.maskload.js學習筆記


概述

Loadmask是一個jquery plugin,使用此插件可以在DOM元素加載或更改內容時為此DOM元素添加一個屏蔽層,以防止用戶互動,同時起到提醒用戶后台任務正在運行的作用。

使用此插件可以大大提高用戶體驗,此插件是一個輕量級jquery plugin,只有2kb左右,非常易於使用;

 

主頁:http://code.google.com/p/jquery-loadmask/

Download: http://code.google.com/p/jquery-loadmask/downloads/list

DEMO: http://jquery-loadmask.googlecode.com/svn/trunk/demo/index.html

Quick Start

下載之后的目錄結構如下圖所示:

 

使用此插件非常簡單,如下步驟所示:

1、  引用jquery,1.2.3以上版本

<script type="text/javascript" src="jquery-1.7.1.js"></script>

2、  引用jquery.loadmask.css、jquery.loadmask.js(或者min版jquery.loadmask.min.js)

<link href="jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='jquery.loadmask.min.js'></script>

3、  調用mask(label,delay)方法屏蔽DOM元素。

$("#myDiv").mask();
$("#myDiv").mask(“Loading…”);
$("#myDiv").mask(“Loading…”,500);

4、  調用unmask()方法解除屏蔽。

$("#myDiv").unmask();

5、  調用isMasked()方法判斷某個DOM元素是否已屏蔽。

if($("#myDiv").isMasked()){
  $("#myDiv").unmask();
}

方法

mask([label] [,delay])

在選擇的DOM元素上顯示加載屏蔽層,支持一個或多個selectors。

定義

$.fn.mask = function(label, delay){
……
}

參數

label:

一個文本字符串,顯示在最外層的一個加載提示信息(在等待圖片邊上),如果此參數值為undefined,則只顯示一個不帶等待圖標和文本提示的屏蔽層;

=undefined

delay:

以毫秒為單位的延遲顯示屏蔽層的時間,如果還沒有到延遲時間又調用了unmask()方法,那么什么都不會發生,即不會再顯示屏蔽層。

案例

$("#myDiv").mask();
$("#myDiv").mask(“Loading…”);
$("#myDiv").mask(“Loading…”,500);

unmask()

移除DOM元素上的屏蔽層,此方法支持一個或多個selector;

定義

$.fn.unmask = function(){
……
}

參數

案例

$("#myDiv").unmask();

isMasked()

檢查一個DOM元素上是否有屏蔽層,如果沒有屏蔽層或屏蔽層延遲顯示,都返回false,否則返回true;

定義

$.fn.isMasked = function(){
……
}

參數

案例

if($("#myDiv").isMasked()){
  $("#myDiv").unmask();
}

實現分析

調用mask方法之后,會在指定的DOM元素追加一個div元素:

<div class="loadmask"></div>

可以通過更改jquery.maskload.css文件中的.loadmask class來更改此屏蔽層樣式;

如果label有值,會再追加一個DIV元素

<div class="loadmask-msg"><div>Waiting...</div></div>

可以通過更改jquery.maskload.css文件中的.loadmask-msg類來更改提示信息樣式;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM