jQuery

1、 jQuery核心函数

$是jQuery的核心函数,能够完成jQuery的很多功能。$()就是调用$这个函数。

2、DOM对象和jQuery对象的相互转换

1、dom对象转换为jQuery对象

  • 先获得dom对象
  • $(dom对象) 就可以转换为 jQuery对象

2、jQuery对象转换为DOM对象

  • 先获得jQuery对象
  • jQuery对象[下标] 取出相应的DOM对象

3、jQuery选择器(重点)

3.1、 基本选择器

id 选择器: 根据id查找标签对象

.class 选择器:根据class查找标签对象

element 选择器:根据标签名查找标签对象

selector1,selector2 组合选择器:合并选择器1,选择器2的结果并返回

3.2、层级选择器

ancestor descendent 后代选择器:在给定的祖先元素下匹配所有的后代元素

parent->child 子元素选择器:在给定的父元素下匹配所有的子元素

prev + next 相邻元素选择器:匹配所有紧接在prev 元素后的next元素

prev~sibings 之后的兄弟元素选择器

3.3、过滤选择器

基本过滤器

:first 获取第一个元素

:last 获取最后一个元素
eq(index) 匹配一个给定索引值的元素

属性过滤器

[attribute] 匹配包含给定属性的元素

[attribute==value] 匹配给定的属性是某个特定值的元素

表单过滤器

: text 匹配所有文本输入框

:password 匹配所有的密码输入框

:radio 匹配所有的单选框

:CheckBox 匹配所有的复选框

表单对象属性过滤器

:checked 匹配所有选中的单选,复选和下拉列表中选中的option标签对象

:selected 匹配所有选中的option

4、属性操作

prop() 可以设置或获取属性的值,只推荐操作checked,readOnly,selected,disabled等

attr() 可以设置或获取属性的值,不推荐操作checked,readOnly,selected,disabled等

html() 可以设置或获取起始标签和结束标签的内容

text() 可以设置或获取起始标签和结束标签的文本
val() 可以设置或获取表单项的value属性值

4.1、全选、全不选练习

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <title>Insert title here</title>
 <script type="text/javascript" src="../../script/jquery-1.7.2.js"></script>
 <script type="text/javascript">
 $(function () {
 //全选绑定单击事件
 $("#checkedAllBtn").click(function () {
 $(":checkbox").prop("checked",true);
 });
 //全不选绑定单击事件
 $("#checkedNoBtn").click(function () {
 $(":checkbox").prop("checked",false);
 });
 //反选绑定单击事件
 $("#checkedRevBtn").click(function () {
 $(":checkbox[name='items']").each(function () {
 //在each遍历的function函数中,有一个this对象,这个this对象是当前正在遍历的dom对象
 this.checked = !this.checked;
 });
 // alert($(":checkbox").length);//5
 //alert($(":checkbox[name='items']").length);//4
 var allCount = $(":checkbox[name='items']").length;//全部的数量
 var checkedCount = $(":checkbox[name='items']:checked").length;//被选中的数量
 // if(allCount==checkedCount){
 // $("#checkedAllBox").prop("checked",true);//注意使用的是哪一个的id属性的值 checkedAllBox
 // }else{
 // $("#checkedAllBox").prop("checked",false);
 // }
 //改进
 $("#checkedAllBox").prop("checked",allCount==checkedCount);
 });
 //提交绑定单击事件
 $("#sendBtn").click(function () {
 //获取全部的复选框
 $(":checkbox[name='items']:checked").each(function () {
 alert(this.value);
 })
 });
 //全选或者全不选的绑定单击事件
 $("#checkedAllBox").click(function () {
 // alert(this);//[object HTMLInputElement]
 // alert(this.checked);//true或者false
 $(":checkbox[name='items']").prop("checked",this.checked);
 });
 //给每个球绑定单击事件
 $(":checkbox[name='items']").click(function () {
 var allCount = $(":checkbox[name='items']").length;
 var checkedCount = $(":checkbox[name='items']:checked").length;
 $("#checkedAllBox").prop("checked",allCount==checkedCount);
 })
 });
 </script>
 </head>
 <body>
 <form method="post" action="">
 你爱好的运动是?<input type="checkbox" id="checkedAllBox" />全选/全不选 
 <br />
 <input type="checkbox" name="items" value="足球" />足球
 <input type="checkbox" name="items" value="篮球" />篮球
 <input type="checkbox" name="items" value="羽毛球" />羽毛球
 <input type="checkbox" name="items" value="乒乓球" />乒乓球
 <br />
 <input type="button" id="checkedAllBtn" value="全 选" />
 <input type="button" id="checkedNoBtn" value="全不选" />
 <input type="button" id="checkedRevBtn" value="反 选" />
 <input type="button" id="sendBtn" value="提 交" />
 </form>
 </body>
</html>

4.2、左到右,右到左 练习

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <title>Insert title here</title>
 <style type="text/css">
 select {
 width: 100px;
 height: 140px;
 }
 div {
 width: 130px;
 float: left;
 text-align: center;
 }
 </style>
 <script type="text/javascript" src="script/jquery-1.7.2.js"></script>
 <script type="text/javascript">
 //完成页面的加载
 $(function () {
 //第一个按钮[选中添加到右边]
 $("button:eq(0)").click(function () {
 $("select:eq(o) option:selected").appendTo($("select:eq(1)"));
 });
 //第2个按钮[全部添加到右边]
 $("button:eq(1)").click(function () {
 $("select:eq(o) option").appendTo($("select:eq(1)"));
 });
 //第3个按钮[选中删除到左边]
 $("button:eq(2)").click(function () {
 $("select:eq(1) option:selected").appendTo($("select:eq(0)"));
 });
 //第4个按钮[全部删除到左边]
 $("button:eq(3)").click(function () {
 $("select:eq(1) option").appendTo($("select:eq(0)"));
 });
 });
 </script>
 </head>
 <body>
 <div id="left">
 <select multiple="multiple" name="sel01">
 <option value="opt01">选项1</option>
 <option value="opt02">选项2</option>
 <option value="opt03">选项3</option>
 <option value="opt04">选项4</option>
 <option value="opt05">选项5</option>
 <option value="opt06">选项6</option>
 <option value="opt07">选项7</option>
 <option value="opt08">选项8</option>
 </select>
 <button>选中添加到右边</button>
 <button>全部添加到右边</button>
 </div>
 <div id="rigth">
 <select multiple="multiple" name="sel02">
 </select>
 <button>选中删除到左边</button>
 <button>全部删除到左边</button>
 </div>
 </body>
</html>

遗忘知识点

find(expr|obj|ele)

搜索所有与指定表达式匹配的元素。这个函数是找出**正在处理的元素的后代元素的好方法**。
所有搜索都依靠jQuery表达式来完成。这个表达式可以使用CSS1-3的选择器语法来写。

confirm()

confirm 是JavaScript语言提供的一个确认提示框函数.你传什么给他,他就提示什么;
当用户点击确定是就返回true,点击取消就返回false

first() 获取第一个元素

<ul>
 <li>list item 1</li>
 <li>list item 2</li>
 <li>list item 3</li>
 <li>list item 4</li>
 <li>list item 5</li>
</ul>
$('li').first()
//结果为:[ <li>list item 1</li> ]
// 在事件响应的function函数中,有一个this对象,这个this对象是正在响应事件的dom对象

:gt(index)

匹配所有大于给定索引值的元素

<table>
 <tr><td>Header 1</td></tr>
 <tr><td>Value 1</td></tr>
 <tr><td>Value 2</td></tr>
</table>
$("tr:gt(0)")
/* 结果:[ <tr><td>Value 1</td></tr>, <tr><td>Value 2</td></tr> ]
*/

:contains(text)

匹配包含给定文本的元素

<div>John Resig</div>
<div>George Martin</div>
<div>Malcom John Sinclair</div>
<div>J. Ohn</div>
$("div:contains('John')")

结果:[

John Resig
,
Malcom John Sinclair
]

作者:半路_出家ren原文地址:https://www.cnblogs.com/y-tao/p/17176764.html

%s 个评论

要回复文章请先登录注册