引入jQuery库:
jQuery 库是一个 JavaScript 文件,您可以使用 HTML 的 <script> 标签引用它:
<head>
<script src="jquery.js"></script>
</head>
通过 CDN(内容分发网络) 引用它
提示:使用谷歌或微软的 jQuery,有一个很大的优势:
许多用户在访问其他站点时,已经从谷歌或微软加载过 jQuery。所有结果是,当他们访问您的站点时,会从缓存中加载 jQuery,这样可以减少加载时间。同时,大多数 CDN 都可以确保当用户向其请求文件时,会从离用户最近的服务器上返回响应,这样也可以提高加载速度。
如需从谷歌或微软引用 jQuery,请使用以下代码之一:
Google CDN:
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
</head>
Microsoft CDN:
<head>
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.0.js"></script>
</head>
文档就绪函数
$(document).ready(function(){
---JQuery functions go here---
});
这是为了防止文档在完全加载(就绪)之前运行 jQuery 代码。
如果在文档没有完全加载之前就运行函数,操作可能失败。下面是两个具体的例子:
- 试图隐藏一个不存在的元素
- 获得未完全加载的图像的大小
基础语法:$(selector).action()
- 美元符号定义 jQuery
- 选择符(selector)“查询”和“查找” HTML 元素
- jQuery 的 action() 执行对元素的操作
jQuery选择器
元素选择器:$("button")
类选择:使用$(".well")
来获取所有class为well
的div
元素。
id选择:用$("#target3")
来选择id为target3
的button
元素。
属性选择器:jQuery 使用 XPath 表达式来选择带有给定属性的元素。
$("[href]") 选取所有带有 href 属性的元素。
$("[href='#']") 选取所有带有 href 值等于 "#" 的元素。
$("[href!='#']") 选取所有带有 href 值不等于 "#" 的元素。
$("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的元素。
jQuery 参考手册 - 选择器:http://www.w3school.com.cn/jquery/jquery_ref_selectors.asp
.addClass()方法
$("button").addClass("animated bounce");
用 $("button")
来选中按钮,然后用.addClass("animated bounce")
给按钮加CSS class。
.removeClass()方法
通过jQueryremoveClass()
方法去掉元素上的class。
$("#target2").removeClass("btn-default");
.css()
方法
改变HTML元素的CSS样式。
把颜色改变成蓝色的:
$("#target1").css("color", "blue");
CSS的属性和值是在引号内的,并且用逗号分开。
.prop()
的方法让你来调整元素的属性.
让按钮变不可选,当你把按钮设置成不可选以后,这会让按钮变灰并且不能点击。
$("button").prop("disabled", true);
.html()
方法可以添加HTML标签和文字到元素,而元素之前的内容都会被方法的内容所替换掉。
$("#target4").html("<em>#target4</em>");
.text()
,它只能改变文本但不能修改标记。
换句话说,这个方法只会把传进来的任何东西(包括标记)当成文本来显示。
$("#target4").text("<em>#target4</em>");
.remove()
的方法可以移除HTML元素
$("#target4").remove();
.appendTo()
方法可以把选中的元素加到其他元素中。
想让target4
从right-well
移到left-well
,我们可以这样使用:
$("#target4").appendTo("#left-well");
.clone()
方法可以拷贝元素。
简单理解:移动元素就是剪切,拷贝元素就是复制。
把target2
从left-well
拷贝到right-well
,我们可以这样写:
$("#target2").clone().appendTo("#right-well");
两个jQuery方法合在一起使用了,这就叫方法链function chaining
,使用起来很方便
每个HTML元素根据继承属性都有父parent
元素。
.parent()
,它允许你访问指定元素的父元素。
让left-well
元素的父元素parent()
的背景色变成蓝色。
$("#left-well").parent().css("background-color", "blue")
许多HTML元素都有children
(子元素),每个子元素都从父元素那里继承了一些属性。
.children()
,它允许你访问指定元素的子元素。
让left-well
元素的子元素children()
的文本颜色变成蓝色。
$("#left-well").children().css("color", "blue")
.target:nth-child(n)
CSS选择器允许你按照索引顺序(从1开始)选择目标元素的所有子元素。
给目标元素的第三个子元素添加bounce class。
$(".target:nth-child(3)").addClass("animated bounce");
:odd获取class为target
且索引为奇数的所有元素,并给他们添加class。
$(".target:odd").addClass("animated shake");
jQuery里的索引是从0开始的,也就是说::odd
选择第2、4、6个元素
:even获取class为target
且索引为偶数的所有元素
$(".target:even").addClass("animated shake");