jQuery 基础
jQuery 介绍
- jQuery是一个轻量级的、兼容多浏览器的JavaScript库。
- jQuery使用户能够更方便地处理HTML Document、Events、实现动画效果、方便地进行Ajax交互,能够极大地简化JavaScript编程。
它的宗旨就是:“Write less, do more.“
jQuery 的优势
- jQuery 写起来极其简练,比JS使用起来方便顺手。
- jQuery 是轻量级的JS框架,jQuery 核心js文件才几十kb,不会影响页面加载速度。、
- jQuery 相当于Python 的第三方模块,第三方模块就是别人写好(封装)的一些代码,我们拿过来(按照别人定好的规则),原生的JS DOM操作是基础。
- 链式表达式,jQuery的链式操作可以把多个操作写在一行代码里,更加简洁。
- 事件、样式、动画支持。jQuery还简化了js操作css的代码,并且代码的可读性也比js要强。
- Ajax操作支持。jQuery简化了AJAX操作,后端只需返回一个JSON格式的字符串就能完成与前端的通信。
- 跨浏览器兼容。jQuery基本兼容了现在主流的浏览器,不用再为浏览器的兼容问题而伤透脑筋。
- 插件扩展开发。jQuery有着丰富的第三方的插件,例如:树形菜单、日期控件、图片切换插件、弹出窗口等等基本前端页面上的组件都有对应插件,并且用jQuery插件做出来的效果很炫,并且可以根据自己需要去改写和封装插件,简单实用。
jQuery 内容
1 | 1. 选择器 |
jQuery 对象
- jQuery对象就是通过jQuery包装DOM对象后产生的对象。
- jQuery对象是 jQuery独有的。
- 如果一个对象是 jQuery对象,那么它就可以使用jQuery里的方法。
- 声明一个jQuery对象变量的时候在变量名前面加上$
- 虽然
jQuery对象
是包装DOM对
象后产生的,但是jQuery对象
无法使用 DOM对象的任何方法,同理DOM对象
也没不能使用jQuery
里的方法。 - 引入
1 | // 先导入,再使用 |
1 | // jQuery 和 DOM 找到d1的方法 |
1 | //JQuery对象转换成DOM对象,用索引去除具体的标签 |
jQuery 基础语法
查找标签
基本选择器
id选择器 1
$("#id")
class选择器 1
$(".className")
标签选择器 1
$("tagName")
配合使用 1
$("div.c1") // 找到有c1 class类的div标签
所有元素选择器 1
$("*")
组合选择器 1
2
3// 逗号,分割条件
$("#id, .className, tagName")
$("a,.c2,.c1") // ,代表或,找出a标签或class = c2,或class = c1的所有标签
层级选择器
1 | $("x y"); // x的所有后代y(子子孙孙) |
1 | // 找到本页面中form标签中的所有input标签 |
基本筛选器:
1 | :first // 第一个 |
1 | // 第一个li标签 |
1 | $("div:has(h1)"); // 找到所有后代中有h1标签的div标签 |
属性选择器
1 | [attribute] |
1 |
|
1 | $("input[name='hobby']") |
表单筛选器
1 | :text |
1 | // 找到所有的text |
表单对象属性 1
2
3
4:enabled
:disabled
:checked
:selected
1 | $(":disabled") |
筛选器
下一个元素 1
2
3
4
5
6
7
8
9$("#id").next()
$("#id").nextAll()
$("#id").nextUntil("#i2") //
```
** 上一个元素 **
```javascript
$("#id").prev()
$("#id").prevAll()
$("#id").prevUntil("#i2")
父亲元素 1
2
3$("#id").parent()
$("#id").parents() // 查找当前元素的所有的父辈元素
$("#id").parentsUntil() // 查找当前元素的所有的父辈元素,直到遇到匹配的那个元素为止。
儿子和兄弟元素 1
2$("#id").children();// 儿子们
$("#id").siblings();// 兄弟们
1 | $("#l3") |
1 | 链式操作: |
查找标签 1
2
3// 搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。
$("div").find("p")
// 等价于$("div p")
1 | var $c1Ele = $(".c1") // 有现成变量 |
1 | // 筛选 |
1 | .first() // 获取匹配的第一个元素 |
1 | $("div").first() |
筛选器方法总结
1 | 1 .next() # 找到挨着的下一个同级标签 |
操作标签
样式操作
1 | addClass(); // 添加指定的CSS类名。 |
1 | <!-- 开关灯--> |
1 | <!--自定义模态框--> |
直接修改样式
1 | css("color","red") // DOM操作:tag.style.color="red" |
1 | $("div").css("color","greeen"); |
1 | // 修改多个样式时,传入键值对 |
1 | <!--修改样式--> |
位置操作
1 | offset() // 获取匹配元素在当前窗口的相对偏移或设置元素位置 |
1 | # 获取位置 |
1 | <!-- 返回顶部 --> |
文本操作
1 | <!--HTML代码:--> |
1 | $("#d1")[0].innerHTML |
1 | <!--文本操作--> |
属性操作
1 | 用于ID等或自定义属性: |
1 | .attr() // $("a").attr("href") |
1 | $("img") |
1 | <!--属性操作--> |
选择按钮操作
1 | <html lang="zh-CN"> |
文档处理
1 | var liEle = document.createElement("li") |
增加表格记录
1 |
|
替换
1 | <html lang="zh-CN"> |
克隆
1 | <html lang="zh-CN"> |
事件
常用事件
1 | click(function(){...}) |
事件绑定
1 | .on( events [, selector ],function(){}) |
1 | <html lang="zh-CN"> |
1 | <!--使用on绑定事件--> |
页面载入
1 | <html lang="zh-CN"> |