zoukankan      html  css  js  c++  java
  • EasyUI学习总结(四)——parser源码分析(转载)

    本文转载自:http://www.cnblogs.com/xdp-gacl/p/4082561.html

    parser模块是easyloader第一个加载的模块,它的主要作用,就是扫描页面上easyui开头的class标签,然后初始化成easyui控件。

    复制代码
     1     /**
     2      * parser模块主要是解析页面中easyui的控件
     3      */
     4     $.parser = {
     5         // 是否自动解析
     6         auto: true,
     7 
     8         // 可以被解析的控件
     9         plugins:['linkbutton','menu','menubutton','splitbutton','layout',
    10                  'tree','window','dialog','datagrid',
    11                  'combobox','combotree','numberbox','validatebox',
    12                  'calendar','datebox','panel','tabs','accordion'
    13         ],
    14 
    15         // 解析函数
    16         parse: function(context){
    17             if ($.parser.auto){
    18                 for(var i=0; i<$.parser.plugins.length; i++){
    19                     (function(){
    20                         // 控件名
    21                         var name = $.parser.plugins[i];
    22                         // 查找class为easyui-控件名的jq对象,例如,easyui-layout
    23                         var r = $('.easyui-' + name, context);
    24 
    25                         if (r.length){
    26                             // 如果有这个对象,那么判断它有没有初始化函数
    27                             if (r[name]){
    28                                 // 如果有直接调用
    29                                 r[name]();
    30                             } else if (window.easyloader){
    31                                 // 如果没有用easyloader把模块的js文件载入进来,再调用
    32                                 easyloader.load(name, function(){
    33                                     r[name]();
    34                                 })
    35                             }
    36                         }
    37                     })();
    38                 }
    39             }
    40         }
    41     };
    42 
    43     // 调用parse方法,实际上easyloader中已经调用了,我估计这个是给不是easyloader加载时使用的
    44     $(function(){
    45         $.parser.parse();
    46     });
    47 })(jQuery);
    复制代码
  • 相关阅读:
    其他魔术方法
    类型约束和类的魔术常量
    PHP对象遍历、内置标准类与数据转对象
    类的自动加载与对象的克隆
    PHP重载与接口
    面向对象
    PHP基础
    地下城与勇士的项目整理
    mysql建表
    jQuery
  • 原文地址:https://www.cnblogs.com/wuyx/p/6723455.html
Copyright © 2011-2022 走看看