1 jQuery 介绍
jQuery是一个JavaScript函数库,是一个轻量级的"写的少,做的多"的JavaScript库,它封装了JavaScript很多方法。在使用的时候,只需要在HTML中直接引用既可。
<script src="jquery-1.10.2.min.js"></script>
jQuery 语法是通过选取 HTML 元素,并执行某些操作: $(元素).操作()。这里的元素和CSS的选择器是相对应的,之后会再次介绍。
所有 jQuery函数都有特定的入口,如图1-1所示。这是为了防止文档在完全加载(就绪)之前运行 jQuery 代码,即在 DOM 加载完成后才可以对 DOM 进行操作。
1.1 jQuery 选择器
jQuery 选择器允许对 HTML 元素组或单个元素进行操作,是基于元素的 id、类、类型、属性、属性值等"查找"(或选择)的HTML 元素。
元素选择器:$("p")。选择所有 <p> 元素
#id 选择器:$("#test")。选择有 id="test" 属性的元素
.class 选择器:$(".test")。选择所有带有 class="test" 属性的元素。
其中,也还有其余常用的实例。例如,$(this):选取当前 HTML 元素;$("p:first")选取第一个 <p> 元素;$(":button")选取所有 type="button" 的 <input> 元素 和 <button> 元素
1.2 jQuery 事件
事件也常常称为触发。比如,click:鼠标点击事件。这也是jQuery语法中后半部分的值,所有事件归纳如图1-2所示。
我们以mousedown为例,即是在某段落按下之后的响应事件。代码如图1-3所示,我们在按下之后弹出一个窗口,结果如图1-4所示。
2 jQuery 效果
本章内容涉及动画效果等等,所有实例为动图
2.1 隐藏和显示
隐藏方法如同javascript,语法:$(selector).hide(speed,callback);例如:$("#hide").click(function(){ $("p").hide();}); 在单击ID为hide的元素时,隐藏<p>标签的内容。
显示方法语法:$(selector).show(speed,callback); 例如:$("#show").click(function(){ $("p").show();});
2.2 淡入淡出
淡入淡出有四种方法,其中speed代表速度,callback是返回值。
jQuery fadeIn() 用于淡入已隐藏的元素。语法:$(selector).fadeIn(speed,callback);
jQuery fadeOut() 方法用于淡出可见元素。语法:$(selector).fadeOut(speed,callback);
jQuery fadeToggle() 方法可以在 fadeIn() 与 fadeOut() 方法之间进行切换。如果元素已淡出,则 fadeToggle() 会向元素添加淡入效果。如果元素已淡入,则 fadeToggle() 会向元素添加淡出效果。语法:$(selector).fadeToggle(speed,callback)。如图2-1所示。
jQuery fadeTo() 方法允许渐变为给定的不透明度(值介于 0 与 1 之间)。语法:$(selector).fadeTo(speed,opacity,callback);
2.3 滑动
jQuery slideDown() 方法用于向下滑动元素。语法:$(selector).slideDown(speed,callback);
jQuery slideUp() 方法用于向上滑动元素。语法:$(selector).slideUp(speed,callback);
jQuery slideToggle() 方法可以在 slideDown() 与 slideUp() 方法之间进行切换。如果元素向下滑动,则 slideToggle() 可向上滑动它们。如果元素向上滑动,则 slideToggle() 可向下滑动它们。$(selector).slideToggle(speed,callback);如图2-2所示。
2.4 动画效果
默认情况下,所有 HTML 元素都有一个静态位置,且无法移动。如需对位置进行操作,要记得首先把元素的 CSS position 属性设置为 relative、fixed 或 absolute!
jQuery animate() 方法用于创建自定义动画:$(selector).animate({params},speed,callback);其中params属性就是设定的CSS样式属性,比如最后所移动到的位置或者变化后最终的大小。例如图2-3所示。
2.5 链
直到现在,我们都是一次写一条 jQuery 语句(一条接着另一条)。不过,有一种名为链接(chaining)的技术,允许我们在相同的元素上运行多条 jQuery 命令,一条接着另一条。如图2-4所示。结果如图2-5所示。
3 jQuery 与 HTML
3.1 捕获
jQuery 拥有可操作 HTML 元素和属性的强大方法。jQuery 中非常重要的部分,就是操作 DOM 的能力,它提供一系列与 DOM 相关的方法,这使访问和操作元素和属性变得很容易。三个简单实用的用于 DOM 操作的 jQuery 方法:
text() - 设置或返回所选元素的文本内容
html() - 设置或返回所选元素的内容(包括 HTML 标记)
val() - 设置或返回表单字段的值
以获取表单为例子。代码如图3-1所示,结果如图3-2所示。
3.2 设置
设置值方法很简单,直接在括号内添加内容既可。如图3-3所示。
但是text()、html() 以及 val(),同样拥有回调函数。回调函数有两个参数:被选元素列表中当前元素的下标,以及原始(旧的)值。然后以函数新值返回您希望使用的字符串。实例如图3-4,结果如图3-5所示。
3.3 元素增删
我们将学习用于添加新内容的四个 jQuery 方法:
append() - 在被选元素的结尾插入内容
prepend() - 在被选元素的开头插入内容
after() - 在被选元素之后插入内容
before() - 在被选元素之前插入内容
实例如图3-6所示,结果如图3-7所示。
如需删除元素和内容,一般可使用以下两个 jQuery 方法:
remove() - 删除被选元素(及其子元素)
empty() - 从被选元素中删除子元素
3.4 CSS类方法
jQuery 拥有若干进行 CSS 操作的方法。如下:
addClass() - 向被选元素添加一个或多个类
removeClass() - 从被选元素删除一个或多个类
toggleClass() - 对被选元素进行添加/删除类的切换操作
css() - 设置或返回样式属性
实例如图3-8所示,结果如图3-9所示。
3.5 CSS()方法
css() 方法设置或返回被选元素的一个或多个样式属性。
返回实例:$("p").css("background-color");
设置实例:$("p").css({"background-color":"yellow","font-size":"200%"});如图3-10所示,结果如图3-11。