zoukankan      html  css  js  c++  java
  • JQuery源码解析-定义变量和函数,赋值JQuery

    这个模块中,主要定义变量

    rootjQuery:定义Jq的根对象,为了可压缩

    readyList :

    core_strundefined:将typeof undefined的值"undefined"赋值给这个变量,因为在IE9及以下对于xmlNode.method是不等于undefined的,只有比较"undefined"字符串的时候才会相等,考虑兼容性

    将一些对象赋值给变量

    location = window.location,
    document = window.document,
    docElem = document.documentElement

    这是为了防止方法外部对$和jQuery赋值,将这些值保存在内部的变量里,不至于丢失。

    _jQuery = window.jQuery,
    
    _$ = window.$,

    class2type:这个变量保存的一些js的类型例如:[{"Object String","string"}]等,以后做类型判断,用到这个数组

    core_deletedIds:在2.0一下的版本,对于data不是做面向对象处理的,在2.0以上才是,所以用到这个,在2.0以上,这个变量没什么太大的用处。

    core_version:版本号。

    下面是对将一下数组方法赋值到这些变量里,core_deletedIds这个变量也就是在这用到了, 其他地方没再用到这个变量。

    core_concat = core_deletedIds.concat,
    core_push = core_deletedIds.push,
    core_slice = core_deletedIds.slice,
    core_indexOf = core_deletedIds.indexOf,
    core_toString = class2type.toString,
    core_hasOwn = class2type.hasOwnProperty,
    core_trim = core_version.trim,

    初始化JQ的方法。

    jQuery = function( selector, context ) {
    // The jQuery object is actually just the init constructor 'enhanced'
    return new jQuery.fn.init( selector, context, rootjQuery );
    },

    下面是一些正则,用到了在说明。

    core_pnum = /[+-]?(?:d*.|)d+(?:[eE][+-]?d+|)/.source,
    
    core_rnotwhite = /S+/g,
    
    rquickExpr = /^(?:s*(<[wW]+>)[^>]*|#([w-]*))$/,
    
    rsingleTag = /^<(w+)s*/?>(?:</1>|)$/,
    
    rmsPrefix = /^-ms-/,
    rdashAlpha = /-([da-z])/gi,

    下面这个方法是用于进行驼峰转换的,例如 case-int 可以转换为caseInt这种操作。

    fcamelCase = function( all, letter ) {
    return letter.toUpperCase();
    },

    这个方法暂时还没明白。。后续补上

    // The ready event handler and self cleanup method
    completed = function() {
    document.removeEventListener( "DOMContentLoaded", completed, false );
    window.removeEventListener( "load", completed, false );
    jQuery.ready();
    };

  • 相关阅读:
    App唤起微信小程序和回调
    微信小程序 — 自定义picker选择器弹窗内容+textarea穿透bug
    微信小程序的场景值scene
    微信小程序textarea层级过高(盖住其他元素)
    微信小程序如何修改本地缓存key中的单个数据
    微信小程序---查看更多的显示与隐藏
    微信小程序文字超过行后隐藏并且显示省略号
    Flutter 页面下拉刷新和上拉加载
    json转换成dart类 JSON to Dart
    Flutter 保持页面状态
  • 原文地址:https://www.cnblogs.com/y8932809/p/5832500.html
Copyright © 2011-2022 走看看