一、jquery 核心函数
首先介绍 jquery 的几个核心函数,在 jquery 中它们起着至关重要的作用,在实际的前端开发过程中用到最多的也是它们。
1、jquery(elements)
将一个或多个dom元素转化为jquery对象。
这个函数也可以接收xml文档和window对象(虽然它们不是dom元素)作为有效的参数。
返回值:jquery 对象
参数
elements:用于封装成 jquery 对象的 dom 元素
复制代码 代码如下:
// 将当前页面的背景色设为黑色
jquery(document.body).css( background-color, black );
再看以下代码
// 将当前页面的背景色设为黑色
$(document.body).css( background-color, black );
代码也可以正常运行,并且执行的效果跟前面的代码一致;那么这儿的 $ 和前面的 jquery 标识符到底有什么关系呢?
打开 jquery 的源文件 jquery-1.3.2.js 发现以下代码
jquery = window.jquery = window.$ = function( selector, context ) {
// the jquery object is actually just the init constructor 'enhanced'
return new jquery.fn.init( selector, context );
}
原来 $ 与 jquery 代表的是 jquery 框架中同一个 function,使用 jquery 和 $ 的效果是一样的;实际上 jquery 框架中采用 $ 来作为 jquery 方法的一个别名(更易于使用),由于担心 $ 与其它 javascript 框架(比如 asp.net ajax)甚至个人代码中的 $ 标识符产生冲突,也可以通过 jquery.noconflict() 函数来移除 $ 与 jquery 函数的关联,这样 $ 就不代表 jquery 方法了,而是代表那个原始的 $ 对象了。
2、jquery(expression,[context])
这个函数接收一个包含 css 选择器的字符串,然后用这个字符串去匹配一组元素。
jquery 的核心功能都是通过这个函数实现的。 jquery中的一切都基于这个函数,或者说都是在以某种方式使用这个函数。这个函数最基本的用法就是向它传递一个表达式(通常由 css 选择器组成),然后根据这个表达式来查找所有匹配的元素。
返回值:jquery 对象
参数
expression: 用来查找 dom 元素的字符串
context: (可选) 作为待查找的 dom 元素集、文档或 jquery 对象,用于限定查找范围
复制代码 代码如下:
// 查找所有 div 元素下的 a 元素
$(div > a);
3、jquery(html)
根据 html 字符串,动态创建由 jquery 对象包装的 dom 元素。
返回值:jquery 对象
参数
html:用于创建 dom 元素的 html 字符串
复制代码 代码如下:
// 将一个 jquery.com 的超链接元素加到页面主体元素中
$(jquery.com).appendto(body);
二、jquery 对象
jquery 核心函数的返回值都是一个 jquery 对象,通过对 jquery 对象进行操作,可以完成 javascript 编程中的大部分任务;那么这个 jquery 对象到底是一个什么对象呢?
通过 doc[0]、doc[1] 可以分别取出一个 dom 对象,其它的则是一些 jquery 对象特有的属性和方法;实际上 jquery 对象包装了 dom 对象,同时还包含了一些操作 dom 元素的 jquery 方法。
在使用 jquery 的过程中,大部分情况下第一步工作同时也是最重要的一步工作,就是取得包装了要操作 dom 对象的 jquery 对象;然后通过调用取得的 jquery 对象的方法来完成对 dom 对象的操作。