1 /** 2 * @fileOverview mask extension for kissy 3 * @author yiminghe@gmail.com 4 */ 5 KISSY.add("component/uibase/mask", function () { 6 7 /** 8 * @name Mask 9 * @class 10 * Mask extension class. 11 * Make component to be able to show with mask. 12 * @memberOf Component.UIBase 13 */ 14 function Mask() { 15 } 16 17 Mask.ATTRS = 18 /** 19 * @lends Component.UIBase.Mask# 20 */ 21 { 22 /** 23 * Whether show mask layer when component shows 24 * @type Boolean 25 */ 26 mask:{ 27 value:false 28 }, 29 /** 30 * Mask node for current overlay 's mask. 31 * @type {NodeList} 32 */ 33 maskNode:{ 34 view:1 35 }, 36 /** 37 * Whether to share mask with other overlays. 38 * Default: true. 39 * @type {Boolean} 40 */ 41 maskShared:{ 42 view:1 43 } 44 }; 45 46 Mask.prototype = { 47 48 __bindUI:function () { 49 var self = this, 50 view = self.get("view"), 51 _maskExtShow = view._maskExtShow, 52 _maskExtHide = view._maskExtHide; 53 if (self.get("mask")) { 54 self.on("show", _maskExtShow, view); 55 self.on("hide", _maskExtHide, view); 56 } 57 } 58 }; 59 60 61 return Mask; 62 }, {requires:["ua"]});