jQuery学习笔记--万能的原则器

       jQuery最重要部分就是选择器。 有了jQuery的选择器我们几乎可以获取页面上任意的一个或一组对象。

       编写任何javascript程序我们要首先获得对象, jQuery选择器能彻底改变我们平时获取对象的方式, 可以获取几乎任何语意的对象, 比如"拥有title属性并且值中包含test的<a>元素", 完成这些工作只需要编写一个jQuery选择器字符串. 学习jQuery选择器是学习jQuery最重要的一步.

1、Dom对象与jQuery对象的转换

(1) Dom转jQuery包装集

      如果要使用jQuery提供的函数,  就要首先构造jQuery包装集.  我们可以使用本文即将介绍的jQuery选择器直接构造jQuery包装集,比如:  $("#testDiv");   上面语句构造的包装集只含有一个id是testDiv的元素.

       我们获取了一个Dom元素,比如: var div = document.getElementById("testDiv");

         上面的代码中div是一个Dom元素,

       我们可以将Dom元素转换成jQuery包装集: var domToJQueryObject = $(div); 

(2) jQuery包装集转Dom对象

        jQuery包装集是一个集合, 所以我们可以通过索引器访问其中的某一个元素:

       var domObject = $("#testDiv")[0];  注意, 通过索引器返回的不再是jQuery包装集, 而是一个Dom对象!

       jQuery包装集的某些遍历方法,比如each()中, 可以传递遍历函数, 在遍历函数中的this也是Dom元素,

       比如:  $("#testDiv").each(function() { alert(this) })

       如果我们要使用jQuery的方法操作Dom对象,怎么办? 用上面介绍过的转换方法即可:
          $("#testDiv").each(function() { $(this).html("修改内容") })

       小结: 先让大家明确Dom对象和jQuery包装集的概念, 将极大的加快我们的学习速度. 我在学习jQuery的过程中就花了很长时间没有领悟到两者的具体差异, 因为书上并没有专门讲解两者的区别, 所以经常被"this指针为何不能调用jQuery方法"等问题迷惑.  直到某一天豁然开朗, 发现只要能够区分这两者, 就能够在写程序时变得清清楚楚.

       什么是jQuery选择器

       在Dom编程中我们只能使用有限的函数根据id或者TagName获取Dom对象.

       在jQuery中则完全不同,jQuery提供了异常强大的选择器用来帮助我们获取页面上的对象, 并且将对象以jQuery包装集的形式返回.

     首先来看看什么是选择器:
    //根据ID获取jQuery包装集
    var jQueryObject = $("#testDiv");

上例中使用了ID选择器, 选取id为testDiv的Dom对象并将它放入jQuery包装集, 最后以jQuery包装集的形式返回.    "$"符号在jQuery中代表对jQuery对象的引用, "jQuery"是核心对象, 其中包含下列方法:

jQuery( expression, context )
Returns: jQuery

这个函数接收一个CSS选择器的字符串,然后用这个字符串去匹配一组元素。

jQuery( selector, context )
Returns: jQuery 包装集

根据选择器选取匹配的对象, 以jQuery包装集的形式返回. context可以是Dom对象集合或jQuery包装集, 传入则表示要从context中选择匹配的对象, 不传入则表示范围为文档对象(即页面全部对象).

上面这个方法就是我们选择器使用的核心方法.可以用"$"代替jQuery让语法更简介, 比如下面两句话的效果相同:    var jQueryObject = jQuery("#testDiv");   //根据ID获取jQuery包装集

         var jQueryObject = $("#testDiv");   //$是jQuery对象的引用: 


   基础选择器的分类

   ID选择器        $("#divId") 选择ID为divId的元素

   标签选择器: $("a") 选择所有<a>元素

   CSS类型选择器  $(".bgRed") 选择所用CSS类为bgRed的元素

   层次选择器和过滤选择器 

  基本过滤器、内容过滤器、可见性过滤器、 属性过滤器、子元素过滤器

  表单选择器、表单过滤器

   API文档

jQuery官方API: http://docs.jquery.com/

中文在线API: http://jquery.org.cn/visual/cn/index.xml

中文jQuery手册下载: http://files.cnblogs.com/zhangziqiu/jquery_api.rar

猜你喜欢

转载自zhengjj-2009.iteye.com/blog/1834124