麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

把jQuery的類、插件封裝成seajs的模塊的方法

2019-11-20 20:57:13
字體:
來源:轉載
供稿:網友

注:本文使用的seajs版本是2.1.1
一、把Jquery封裝成seajs的模塊

復制代碼 代碼如下:
define(function () {

   //這里放置jquery代碼 把你喜歡的jquery版本放進來就好了


return $.noConflict();
});

調用方法:
這樣引進就可以像以前一樣使用jquery

復制代碼 代碼如下:
define(function (require, exports, module) {
    var $ = require('./js/jquery');
 

   // $(document).ready(function () {
     //   $("tr").wyhinterlaced({ "odd": "red", "even": "blue" });
     //   $("tr").wyhhover();
   // })
});


二、把jquery的類封裝成seajs模塊
復制代碼 代碼如下:
define(function (require, exports, module) {

    var $ = require("../js/jquery");


    var weekday = new Array(7)
    weekday[0] = "星期一";
    weekday[1] = "星期二";
    weekday[2] = "星期三";
    weekday[3] = "星期四";
    weekday[4] = "星期五";
    weekday[5] = "星期六";
    weekday[6] = "星期日";

     function GetType(arg) {
        var today = new Date();
        var year = today.getFullYear();
        var month = today.getMonth() + 1;
        var td = today.getDate();
        var d = weekday[today.getDay() - 1];
        var h = today.getHours();
        var m = today.getMinutes();
        var s = today.getSeconds();
        switch (arg) {
            case 1:  //2013-09-09 09:31:56
                return year + "-" + month + "-" + td + "  " + h + ":" + m + ":" + s; break;
            case 2:  //2013-09-09 (星期一) 09:31:56
                return year + "-" + month + "-" + td + " (" + d + ") " + h + ":" + m + ":" + s; break;
            case 3:  //09-09-2013 09:31:56
                return month + "-" + td + "-" + year + "  " + h + ":" + m + ":" + s; break;
            case 4:  //09-09-2013 星期一 09:31:56
                return month + "-" + td + "-" + year + " (" + d + ") " + h + ":" + m + ":" + s; break;
            case 5:  //2013年09月09日 09時31分秒56
                return year + "年" + month + "月" + td + "日  " + h + "時" + m + "分" + s + "秒"; break;
            case 6:  //2013年09月09日 星期一 09時31分秒56
                return year + "年" + month + "月" + td + "日  (" + d + ")  " + h + "時" + m + "分" + s + "秒"; break;
        }
    };

    /*******************************************************
    /*函數名:GetTime
    /*參數:數值(包括整形浮點型都可以,浮點型會做四舍五入處理,如果不是數字,
    函數將采用默認的時間格式返回!時間樣式有15【1-15是有效的時間樣式
    超出或小于都將采用默認的樣式 樣式1】中)
    /*功能  獲取當前的系統時間 可定制格式
    *******************************************************/

     function  GetTime(arg) {
        if (!isNaN(arg)) {
            var num = Math.round(arg);

            if (num < 7 && num > 0) {
                return GetType(num);
            }
            else {
                var str;
                var str2;
                switch (num) {
                    case 0: return GetType(1); break;
                    case 7: str = GetType(2); return str.replace(/星期/, ""); break;
                    case 8: str = GetType(1); return str.replace(/-/, "/").replace(/-/, "/"); break;
                    case 9: str = GetType(2); return str.replace(/-/, "/").replace(/-/, "/");
                    case 10: str = GetType(2); str2 = str.replace(/-/, "/").replace(/-/, "/"); return str2.replace(/星期/, ""); break;
                    case 11: str = GetType(4); return str.replace(/星期/, ""); break;
                    case 12: str = GetType(3); return str.replace(/-/, "/").replace(/-/, "/"); break;
                    case 13: str = GetType(4); return str.replace(/-/, "/").replace(/-/, "/");
                    case 14: str = GetType(4); str2 = str.replace(/-/, "/").replace(/-/, "/"); return str2.replace(/星期/, ""); break;
                    case 15: str = GetType(6); return str.replace(/星期/, "");
                    default: return GetType(1); break;
                }
            }
        }
        else {
            return GetType(1);
        }
    };


    /* 獲取系統的當前年數*/
     function GetYear() {
        var today = new Date();
        return today.getFullYear();
    };


    /*獲取系統的當前的月數*/
      function GetMonth() {
        var today = new Date();
        return today.getMonth() + 1; ;
    };
    /*獲取系統的當前的天數*/
      function GetDay() {
        var today = new Date();
        return today.getDate(); ;
    };
    /*獲取系統的當前的小時*/
   function GetHours() {
        var today = new Date();
        return today.getHours();
    };
    /*獲取系統的當前的分鐘*/
     function GetMinute() {
        var today = new Date();

        return today.getMinutes();
    };
    /*獲取系統的當前的秒數*/
     function GetSecond() {
        var today = new Date();
        return today.getSeconds();
    };


    /************************************************************
    *函數名:TimeSubMillisecond
    *參數:endtime(結束時間) starttime(起始時間)
    *功能:獲取兩個時間的毫秒級的差值,必須寫一個參數 第二個參數(起始時間)可以
    *不寫默認是系統當前時間
    ************************************************************/
    function  TimeSubMillisecond(endtime, starttime) {
        var end = new Date(endtime).getTime();
        if (!endtime) {
            return -1;
        }
        if (!starttime) {
            start = new Date().getTime();
        }
        else {
            start = new Date(starttime).getTime();
        }
        if (start > end) {
            return -1;
        }
        else {
            return end - start;
        }
    };
    /************************************************************
    *函數名:TimeSubNormal
    *參數:endtime(結束時間) starttime(起始時間)
    *功能:獲取兩個時間的差值,必須寫一個參數 第二個參數(起始時間)可以
    *不寫默認是系統當前時間
    ************************************************************/

      function  TimeSubNormal(endtime, starttime) {
        var end = new Date(endtime).getTime();
        var start;
        if (!starttime) {
            start = new Date().getTime();
        }
        else {
            start = new Date(starttime).getTime();
        }
        if (start > end) {
            return -1;
        }
        else {
            var alltime = end - start;
            var seconds = alltime / 1000;
            var minutes = Math.floor(seconds / 60);
            var hours = Math.floor(minutes / 60);
            var days = Math.floor(hours / 24);
            var CDay = days;
            var CHour = hours % 24;
            var CMinute = minutes % 60;
            var CSecond = Math.floor(seconds % 60);
            var str = "";
            if (CDay > 0) {
                str += CDay + "天";
            }
            if (CHour > 0) {
                str += CHour + "小時";
            }
            if (CMinute > 0) {
                str += CMinute + "分鐘";
            }
            if (CSecond > 0) {
                str += CSecond + "秒";
            }
            return str;
        }
    };


    exports.GetTime = GetTime;
    exports.GetYear = GetYear;
    exports.GetMonth = GetMonth;
    exports.GetDay = GetDay;

    exports.GetHours = GetHours;
    exports.GetMinute = GetMinute;
    exports.GetSecond = GetSecond;
    exports.TimeSubMillisecond = TimeSubMillisecond;
    exports.TimeSubNormal = TimeSubNormal;

})

調用方法:

復制代碼 代碼如下:
define(function (require, exports, module) {
    var $ = require('./js/jquery');
    var a=require('./js/time');

    alert(a.GetTime(3));
});


三、把jquery 插件的封裝成seajs模塊
下面是把jquery的一個插件封裝成模塊的例子
復制代碼 代碼如下:
define(function (require, exports, moudles) {
    return function (jquery) {
        (function ($) {
             //給當前行高亮
  $.fn.wyhhover = function (options) {//options 經常用這個表示有許多個參數。
        var defaultVal = {
         BackColor: '#ccc',
        };

         var obj = $.extend(defaultVal, options);

          return this.each(function () {
            var tabObject = $(this); //獲取當前對象
            var oldBgColor = tabObject.css("background-color"); //獲取當前對象的背景色
            tabObject.hover(//定義一個hover方法。
            function (){tabObject.css("background-color", obj.BackColor);},
            function () {tabObject.css("background-color", oldBgColor);});
        });
        }
     //使奇偶行不同的顏色
        $.fn.wyhinterlaced = function (options) {//options 經常用這個表示有許多個參數。
        var defaultVal = {
         odd: '#DDEDFB',
         even: '#fff',
        };

         var obj = $.extend(defaultVal, options);

          return this.each(function () {
            var tabObject = $(this); //獲取當前對象
           if(tabObject.index()%2==0)
           {
              tabObject.css("background-color", obj.odd);
           }else
           {
             tabObject.css("background-color", obj.even);
           }
        });
        }
        })(jquery);
    }

})

調用方法:
使用共享的方式調用插件

復制代碼 代碼如下:
define(function (require, exports, module) {
    var $ = require('./js/jquery');
    require('./js/jquery_tr')($);//共享給jquery

    $(document).ready(function () {
        $("tr").wyhinterlaced({ "odd": "red", "even": "blue" });
        $("tr").wyhhover();
    })
});

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日日草视频 | 精品一区二区6 | 国产精品一区自拍 | h色视频在线观看 | 天使萌一区二区三区免费观看 | 玩偶姐姐在线观看免费 | 久久久久久久久久久久久久久久久久 | 亚洲精品欧美在线 | 国产1区在线观看 | 91精品国产综合久久婷婷香蕉 | 国产精品视频二区不卡 | 成人免费入口 | 一区二区三区欧美在线 | 九色中文 | 在线视频观看国产 | 新久久久久久 | 色猫av| 精品一区二区免费 | 欧美一级黄色片免费观看 | 欧美色另类 | 爽爽淫人综合网网站 | 成人免费av在线播放 | 成人在线视频精品 | 国产精品99久久免费观看 | 久草视频国产在线 | 国产精品av久久久久久网址 | 精品无码久久久久久国产 | h网站在线观看 | 免费毛片播放 | 国产黄色毛片 | 黄色av片在线观看 | 羞羞网站在线看 | 欧美成人午夜一区二区三区 | 毛片在线免费观看完整版 | 久久久成人动漫 | 国产精品免费一区二区三区四区 | 黄色毛片视频在线观看 | 国产成人自拍视频在线 | 国产精品视频自拍 | 粉嫩蜜桃麻豆免费大片 | 国产精品久久久久久久久久久久久久久久 |