《锋利的Jquery第二版》读书笔记 第一章

按照书本介绍顺序整理jquery库相关的语法、要点。

window.onload与$(document).ready()功能类似,前者需要所有资源加载完毕,且不能同时编写多个;后者加载完DOM结构即执行,且可编写多个按序执行。

链式结构(注意代码隔行及备注)

$(".level > a").click(function(){
   $(this).addClass("current")
.next().show()
.parent().sibling().children("a").removeClass("current")
.next().hide();
return false; })

jquery对象是类似数组的对象,可通过[index]和get(index)转换为DOM对象,如

var $a = $("#b")
var c   = $a[0]


var $a = $("#b")
var c   = $a.get(0)

DOM对象转换为jquery对象只需把DOM对象用$()包装起来即可,如

var sdf = document.getElementById("sdf");
var $cr =$(sdf)

解决不同库之间的冲突,分为以下两种情况:

1.jquery库在其他库之后导入

调用jQuery.noConflict()函数将$的控制权移交给其他JavaScript库,jquery库则不使用快捷键或重新自定义快捷键,如

jQuery("p").click(function(){
      .........//一些代码
      })



var $j = jQuery.noConflict(); //自定义一个快捷方式
      $j("p").click(function(){
     .........//一些代码
})

此外,只在jquery内部继续使用$快捷键或把jQuery作为参数传递给函数也可避免冲突。

2.jQuery库在其他库之前导入

jquery不必调用jQuery.noConflict()移交$控制权,可直接使用jQuery(),也就是说后导入的库总是能覆盖前一个库取得$控制权

原文地址:https://www.cnblogs.com/sdgjytu/p/3538384.html