引用
<head>
<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js">
</script>
</head>
文档就绪
$(document).ready(function(){
// 开始写 jQuery 代码...
});
选择器
- #id 选择器
- .class 选择器
- :type 类型选择器
- ("*")选取所有元素在线实例(":button")选取所有 type="button" 的 <input> 元素 和 <button> 元素在线实例("p:first")选取第一个 <p> 元素在线实例("ul li:first-child")选取每个 <ul> 元素的第一个 <li> 元素在线实例("a[target='_blank']")选取所有 target 属性值等于 "_blank" 的 <a> 元素在线实例
1.基本选择器
代码语言:javascript复制$("#id") //ID选择器
$("div") //元素选择器
$(".classname") //类选择器
$(".classname,.classname1,#id1") //组合选择器
2.层次选择器
代码语言:javascript复制 $("#id>.classname ") //子元素选择器
$("#id .classname ") //后代元素选择器
$("#id .classname ") //紧邻下一个元素选择器
$("#id ~ .classname ") //兄弟元素选择器
3.过滤选择器(重点)
代码语言:javascript复制$("li:first") //第一个li
$("li:last") //最后一个li
$("li:even") //挑选下标为偶数的li
$("li:odd") //挑选下标为奇数的li
$("li:eq(4)") //下标等于 4 的li(第五个 li 元素)
$("li:gt(2)") //下标大于 2 的li
$("li:lt(2)") //下标小于 2 的li
$("li:not(#runoob)") //挑选除 id="runoob" 以外的所有li
3.2内容过滤选择器
代码语言:javascript复制$("div:contains('Runob')") // 包含 Runob文本的元素
$("td:empty") //不包含子元素或者文本的空元素
$("div:has(selector)") //含有选择器所匹配的元素
$("td:parent") //含有子元素或者文本的元素
3.3可见性过滤选择器
代码语言:javascript复制$("li:hidden") //匹配所有不可见元素,或type为hidden的元素
$("li:visible") //匹配所有可见元素
3.4属性过滤选择器
代码语言:javascript复制$("div[id]") //所有含有 id 属性的 div 元素
$("div[id='123']") // id属性值为123的div 元素
$("div[id!='123']") // id属性值不等于123的div 元素
$("div[id^='qq']") // id属性值以qq开头的div 元素
$("div[id$='zz']") // id属性值以zz结尾的div 元素
$("div[id*='bb']") // id属性值包含bb的div 元素
$("input[id][name$='man']") //多属性选过滤,同时满足两个属性的条件的元素
3.5状态过滤选择器
代码语言:javascript复制$("input:enabled") // 匹配可用的 input
$("input:disabled") // 匹配不可用的 input
$("input:checked") // 匹配选中的 input
$("option:selected") // 匹配选中的 option
4.表单选择器
代码语言:javascript复制$(":input") //匹配所有 input, textarea, select 和 button 元素
$(":text") //所有的单行文本框,$(":text") 等价于$("[type=text]"),推荐使用$("input:text")效率更高,下同
$(":password") //所有密码框
$(":radio") //所有单选按钮
$(":checkbox") //所有复选框
$(":submit") //所有提交按钮
$(":reset") //所有重置按钮
$(":button") //所有button按钮
$(":file") //所有文件域
代码语言:javascript复制
常见 DOM 事件
鼠标事件 | 键盘事件 | 表单事件 | 文档/窗口事件 |
---|---|---|---|
click | keypress | submit | load |
dblclick | keydown | change | resize |
mouseenter | keyup | focus | scroll |
mouseleave | hover | blur | unload |
获得内容 - text()、html() 以及 val()
三个用于 DOM 操作的 jQuery 方法:
- text() - 设置或返回所选元素的文本内容
- html() - 设置或返回所选元素的内容(包括 HTML 标记)
- val() - 设置或返回表单字段的值
- attr() - 设置或返回属性值。
返回内容:$("#test").text()
修改内容:$("#test2").html("<b>Hello world!</b>");
$("#runoob").attr("href","http://www.runoob.com/jquery");
添加内容
- append() - 在被选元素的结尾插入内容
- prepend() - 在被选元素的开头插入内容
- after() - 在被选元素之后插入内容
- before() - 在被选元素之前插入内容
注意:
append/prepend 是在选择元素内部嵌入。
after/before 是在元素外面追加。
删除元素/内容
- remove() - 删除被选元素(及其子元素)
- remove() 中添加参数,删除时对该元素进行过滤
- empty() - 从被选元素中删除子元素
jQuery 操作 CSS
- addClass() - 向被选元素添加一个或多个css类
- removeClass() - 从被选元素删除一个或多个css类
- toggleClass() - 对被选元素进行添加/删除类的切换操作
- css() - 设置或返回样式属性
jQuery 尺寸方法
- width()
- height()
- innerWidth() - 宽度(包括内边距)
- innerHeight() - 高度(包括内边距)
- outerWidth() - 宽度(包括内边距和边框)
- outerHeight() - 高度(包括内边距和边框)
向上遍历 DOM 树
这些 jQuery 方法很有用,它们用于向上遍历 DOM 树:
- parent() - 返回被选元素的直接父元素。
- parents() - 返回被选元素的所有祖先元素
- parentsUntil() - 返回介于两个给定元素之间的所有祖先元素,$("span").parentsUntil("div");
向下遍历 DOM 树
- children() - 所有直接子元素
- find() - 被选元素的所有后代元素,div下所有span:$("div").find("span");
在 DOM 树中水平遍历
有许多有用的方法让我们在 DOM 树进行水平遍历:
- siblings() - 所有同胞元素
- next() - 下一个同胞元素
- nextAll() - 所有跟随的同胞元素
- nextUntil() - 两个参数之间的所有同胞元素
- prev() - 前面的同胞元素
- prevAll()
- prevUntil()
遍历- 过滤
- first()
- last()
- eq() - 返回被选元素中带有指定索引号的元素(索引号从 0 开始)
- filter() - 选取匹配的元素,返回带有类名 "url" 的所有 <p> 元素:$("p").filter(".url");
- not() - 选取不匹配的元素