jQuery基础核心

1、学习jQuery的条件:

  • html和css
  • javascript
  • 一定的php基础

MD时刻提醒自己,时间不够用呀

一、代码风格

1、$ 是jQuery中的jQuery对象,在jQuery程序中,不管是页面元素的选择还是内置的功能函数,都是美元符号$起始的。

 

$(function (){});                 //执行一个匿名函数
$('#box');                         // 进行执行的ID元素选择
$('box').css('color','red')     // 执行功能函数
// 执行功能函数的时候,.css()这个功能函数并不是直接被‘$’对象调用执行的恶,而是先获
// 取元素后,返回某个对象再调用功能函数,也就是说,这个返回的对象也是jQuery对象

 

二、加载模式

1、jQuery代码一直使用$(function(){}) 这段代码进行首尾包裹,原因是

  • 只需要等待网页中的DOM结构加载完毕,就能执行包裹的代码,而不用像javascript中提供的Window.onload那样必须等待网页全部加载完毕再执行
  • 可以执行多次,js则不支持重载

三、对象互换

只要使用$()包裹后,最终返回的都是jQuery对象

四、多个库之间的冲突

1、当一个项目中引入多个第三方库的时候,由于没有命名空间(好比同一个目录下的文件夹一样,名字相同就会产生冲突)的约束,库与库之间就容易发生冲突,比如prototype和jQuery库都使用$作为基准起始符,共融的方法有两种:

  • 将jQuery库在base库之前引入,那么$ 的所有权就归base库所有,而jQuery可以直接用jQuery对象调用,或者创建一个$$符给jQuery使用
    //jQuery库在base库之前引用,那么$所有权就是base库的
    var $$ = jQuery;
    $(function(){
        
        alert($('#box').ge(0));     // base库中的ge()方法
        alert($$('#box').get(0));   // jQuery库中的get()方法
        
    });

     

  • 如果将base库在jQuery库之前调用,那么$符号就归jQuery库所有,base将因为冲突而失去作用,此时jQuery库提供了一个方法:jQuery.noConflict(),将$符所有权剔除
    jQuery.noConflict();                //自行了断,把自己的$所有权剔除
    
    var $$ = jQuery;
    
    $(function () {                        //jQuery库在base库之后引用,那么$所有权就是jQuery库的
        
    
        alert($('#box').ge(0));
        alert($$('#box').get(0));
        
        
    });

     

 

posted @ 2017-04-10 18:50  FernLi  阅读(105)  评论(0)    收藏  举报