zoukankan      html  css  js  c++  java
  • jQuery源码笔记——准备

    将变量局部化

    作为一个库首要解决的问题就是防止影响全局的变量。自执行匿名函数可以很好的实现这一点。

    传入window,undefiend是将全局变量改为局部变量,根据作用域链访问原理,访问更快一些,。undefined不传值实际就是传入undefined;

    (function(window, undefined) {
        var jQuery = function() {}
        // ...
        window.jQuery = window.$ = jQuery;
    })(window);

    无new实例化

    function foo()
    {   
       // 如果未使用new,重新调用。
       if ( !(this instanceof arguments.callee) )
          return new arguments.callee();
    }

    判断页面是否加载完成

    document.onreadystatechange = subSomething;//当页面加载状态改变的时候执行这个方法. 
    function subSomething() 
    { 
        if(document.readyState == “complete”) //当页面加载状态 
        alert(1)
    } 

    让出window.$控制权

    //保存之前的$
    var _$ = window.$;
    //假设定义变量$指向库jQuery
    window.$ = "I am jQuery";
    //还原初始$状态
    var noConflict = function() {
        window.$ = _$
    }
    console.log($)//I am jQuery
    noConflict()
    console.log($)//undefiend
  • 相关阅读:
    HTML、CSS、JS 复习——序
    HTML + CSS短标题(二,三,四文字长度)两端对齐的方式
    Supper关键字
    java的重写
    java重载
    Java继承
    JAVA访问权限控制
    (转)java类初始化顺序
    Java 数组和集合
    Java 方法签名
  • 原文地址:https://www.cnblogs.com/winderby/p/4074593.html
Copyright © 2011-2022 走看看