zoukankan      html  css  js  c++  java
  • 在JavaScript 使用命名空间

    在JavaScript中使用命名空间,更便于方法的重用和管理。直接贴源码

    在模板页MasterPage.master中添加:


    代码
    <script type="text/javascript">
         
    var  dudu= {}; 
         
    /* siteinfo   */ 
         dudu.siteinfo 
    = {domain:'http://www.dudu.com',shortSiteName:'嘟嘟',siteName:'嘟嘟乐园'};
         
    /* userinfo */
         dudu.userinfo 
    = {isLogin:true,
                          name: 小豆豆,
                         id:
    121,
                         mid:doudou,
                         icon:http:
    //www.dudu.com/s_img_121.jpg,
                         loginURL:''};
        
    // 全局对象仅仅存在register函数,参数为名称空间全路径,如"Grandsoft.GEA"
        dudu.register = function(fullNS)
        {
          
    // 将命名空间切成N部分, 比如Grandsoft、GEA 等
          var nsArray = fullNS.split('.');
          
    var sEval = "";
          
    var sNS = "";
         
    for (var i = 0; i < nsArray.length; i++)
         {
            
    if (i != 0) sNS += ".";
            sNS 
    += nsArray[i];
            
    // 依次创建构造命名空间对象(假如不存在的话)的语句
            // 比如先创建Grandsoft,然后创建Grandsoft.GEA,依次下去
            sEval += "if (typeof(" + sNS + ") == 'undefined') " + sNS + " = new Object();"
         }
           
    if (sEval != "") eval(sEval);
         }                               
        
    </script>


    具体的模块:log(日志)

    独立封装出一个js文件 命名为dudu.log.js文件

    内容如下:

    代码
      //使用命名空间的范例
      dudu.register("dudu.log"); //此处注册
      
      dudu.log
    =//添加事件
          Add: function(){
                 alert(
    "111");
          },
              LogRep : {
              Add : 
    function(){/*code...*/},
              Edit: 
    function(){ alert("222");}
              }
      }

    在log.aspx页面中添加引用(套用MasterPage.master模板页):

    调用方法如下:

     <input type="button" onclick="dudu.log.add();" />
     <input type="button" onclick="dudu.log.LogRep.add();" />


     参考:【1】 http://www.cnblogs.com/leafyoung/archive/2006/10/11/526570.html


  • 相关阅读:
    OpenCV 机器学习之 支持向量机的使用方法实例
    Lua中调用C函数(lua-5.2.3)
    我的Hook学习笔记
    几种开源分词工具的比較
    利用JasperReport+iReport进行Web报表开发
    移动前端开发者必知必会:移动设备概述
    图表插件--jqplot交互演示样例
    算法之二叉树各种遍历
    repo的小结
    sqlite3经常使用命令&amp;语法
  • 原文地址:https://www.cnblogs.com/dooom/p/1657841.html
Copyright © 2011-2022 走看看