[关闭]
@GivenCui 2016-08-21T21:03:35.000000Z 字数 1193 阅读 601

第一章 认识jQuery

锋利的jQuery


1.1 jQuery的优势

  1. 轻量级
  2. 强大的选择器
  3. 出色的DOM操作封装
  4. 可靠的事件处理机制
  5. 完善的Ajax
  6. 不污染顶级变量
  7. 出色的浏览器兼容性
  8. 链式操作
  9. 隐式迭代
  10. 行为层和结构层分离
  11. 丰富的插件支持
  12. 完善的文档
  13. 开源

1.2 window.onload和$(document).ready()对比

  window.onload $(document).ready()
执行时机 网页中所有内容的加载完毕
(包括图片)
DOM结构绘制完毕
编写个数 1个 多个
简化写法 $(function(){})

1.3 代码风格

链式调用的代码风格
1.按照类换行, 比如添加移除类一行, 动画一行
2.子元素的换行并缩进

  1. $(document).ready(function(){
  2. $(".has_children").click(function(){
  3. $(this).addClass("highlight")
  4. .children("a").show().end()
  5. .siblings().removeClass("highlight")
  6. .children("a").hide();
  7. });
  8. });

1.4 DOM对象和jQuery对象

相关概念

DOM对象: Document Object MOdel,文档对象模型,DOM树形结构,操作DOM节点的方法是原生的JavaScript方法
jQuery对象:通过jQuery包装DOM对象后产生的对象.

DOM对象转jQuery对象

  1. // 对于一个DOM对象, $()包裹就转换为jQuery对象
  2. var cr = document.getElementById("cr"); // DOM对象
  3. var $cr = $(cr); // jQuery对象

jQuery对象转DOM对象

  1. // 通过[index]或get(index)方法转换成DOM对象
  2. var $cr = $("#cr"); // jQuery对象
  3. var cr = $cr[0]; // 方法一 --> DOM对象
  4. var cr = $cr.get(0); // 方法二 --> DOM对象

1.5 解决jQuery库冲突的方法

jQuery.noConflict()方法

  1. // 方法一:
  2. jQuery.noConflict(); // 释放$的控制权
  3. // 以下用jQuery来使用
  1. // 方法二: 自定义快捷方式
  2. var $j = jQuery.noConflict();
  3. // 以下用$j来使用方法
  1. // 方法三: 匿名函数内传参使用$
  2. jQuery.noConflict();
  3. (function ($) {
  4. // 加载函数
  5. $(function(){
  6. // 正常使用
  7. });
  8. })(jQuery);
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注