定义

jQuery 是一个 JavaScript 库。jQuery 极大地简化了 JavaScript 编程。jQuery是一个轻量级的"写的少,做的多"的JavaScript库。源码走这里jQuery产生的对象时jQuery独有的,只能自己调用

书写规范

基础语法: **$( selector ). action () ** 变量定义: var

v

a

r

i

a

b

l

e

=

j

Q

u

e

r

y

对象

变量前并不强制加

variable = jQuery 对象 **变量前并不强制加 **

variable=jQuery对象∗∗变量前并不强制加∗∗ 符号,可以直观了解声明了一个jQuery对象

元素寻找

选择器(selector)

1、基本选择器

1

2

3

4

5

6

7

8

9

|

$(``"*"``) ``// 选取所有元素

$(``"element"``) ``// 选取标签名称的所有元素

$(``"#id"``) ``// 选取id 属性指定的元素

$(``".class"``) ``// 选取指定的 class 查找元素

$(``".calss,p,div"``) ``// 选取多样

—|—

2、层级选择器

1

2

3

4

5

6

7

|

$(``".outer div"``) ``// 后代选择器查找

$(``".outer>div"``) ``// 子代选择器查找

$(``".outer+div"``) ``// 通过毗邻查找,用的少。。只能往下找

$(``".outer~div"``) ``// 自下找,不限制紧挨

—|—

3、属性选择器

1

2

3

|

$(``'[id="div1"]'``)

$(``'["alex="sb"][id]'``) ``// 可双层属性选择

—|—

筛选器

1、基本筛选器

1

2

3

4

5

6

7

8

9

10

11

12

|

$(``'li:first'``) ``//第一个元素

$(``'li:last'``) ``//最后一个元素

$(``"tr:even"``) ``//索引为偶数的元素,从 0 开始

$(``"tr:odd"``) ``//索引为奇数的元素,从 0 开始

$(``"tr:eq(1)"``) ``//给定索引值的元素

$(``"tr:gt(0)"``) ``//大于给定索引值的元素

$(``"tr:lt(2)"``) ``//小于给定索引值的元素

$(``":focus"``) ``//当前获取焦点的元素

$(``":animated"``) ``//正在执行动画效果的元素

—|—

2、表单筛选器

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

|

$(``":input"``) ``// 匹配所有 input, textarea, select 和 button 元素

$(``":text"``) ``// 所有的单行文本框

$(``":password"``) ``// 所有密码框

$(``":radio"``) ``// 所有单选按钮

$(``":checkbox"``) ``// 所有复选框

$(``":submit"``) ``// 所有提交按钮

$(``":reset"``) ``// 所有重置按钮

$(``":button"``) ``// 所有button按钮

$(``":file"``) ``// 所有文件域

$(``"input:checked"``) ``// 所有选中的元素

$(``"select option:selected"``) ``// select中所有选中的option元素

``// 如果select默认选中想要的值 $('select').val(1)

``// 即默认选中值为1 option标签

``// 如果想选中多个值呢???

``// $('select').val([1,2,]) 放入一个数组即可

—|—

3、内容筛选器

1

2

3

4

|

$(``"div:contains('test')"``) ``// 包含test文本的元素

$(``"td:empty"``) ``// 不包含子元素或者文本的空元素

$(``"div:has(p)"``) ``// 含有选择器所匹配的元素

$(``"td:parent"``) ``// 含有子元素或者文本的元素

—|—

4、查找筛选器

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

|

$(``"div"``).children() ``// 查找div下的所有儿子标签

$(``"div"``).find() ``// 查找div下的所有后代标签

$(``"p"``).next() ``// 紧邻p元素后的下一个同辈元素

$(``"p"``).nextAll() ``// p元素之后所有的同辈元素

$(``"#test"``).nextUntil(``"#test2"``) ``// id为"#test"元素之后到id为'#test2'之间所有的同辈元素(开区间)

$(``"p"``).prev() ``// 紧邻p元素前的一个同辈元素

$(``"p"``).prevAll() ``// p元素之前所有的同辈元素

$(``"#test"``).prevUntil(``"#test2"``) ``// id为"#test"元素之前到id为'#test2'之间所有的同辈元素(开区间)

$(``"p"``).parent() ``// 每个p元素的父元素

$(``"p"``).parents() ``// 每个p元素的所有祖先元素,body,html

$(``"#test"``).parentsUntil(``"#test2"``)``// id为"#test"元素到id为'#test2'之间所有的父级元素(开区间)

$(``"div"``).siblings() ``// 所有的同辈元素,不包括自己

$(``"p"``).hasClass(``"test"``) ``// 查找p标签有class名字为test

—|—

更多选择器玩转

1

2

3

|

$(``"[href]"``) ``// 选取带有 href 属性的元素

$(``"a[target='_blank']"``) ``// 选取所有 target 属性值等于 "_blank" 的 元素

$(``"a[target!='_blank']"``) ``// 选取所有 target 属性值不等于 "_blank" 的 元素

—|—

属性操作

1、基本属性操作

1

2

3

4

5

6

7

8

9

10

|

$(``"img"``).attr(``"src"``); ``// 返回文档中所有图像的src属性值

$(``"img"``).attr(``"src"``,``"test.jpg"``); ``// 设置所有图像的src属性

$(``"img"``).removeAttr(``"src"``); ``// 将文档中图像的src属性删除

$(``"input[type='checkbox']"``).prop(``"checked"``, ``true``); ``// 选中复选框

$(``"input[type='checkbox']"``).prop(``"checked"``, ``false``); ``// 取消复选框

$(``"img"``).removeProp(``"src"``); ``// 删除img的src属性

// attr与prop区别

// attr可以找到自定义的属性、prop只能找到固有的属性

—|—

2、class操作

1

2

3

4

|

$(``"p"``).addClass(``"test"``); ``// 为p元素加上 'test' 类

$(``"p"``).removeClass(``"test"``); ``// 从p元素中删除 'test' 类

$(``"p"``).toggleClass(``"test"``); ``// 如果存在就删除,否则就添加

$(``"p"``).hasClass(``"test"``); ``// 判断有没有 'test' 类,返回布尔值

—|—

3、标签文本text/html

1

2

3

4

5

6

|

$(``'p'``).html(); ``// 返回p元素的html内容

$(``"p"``).html(``"Hello test!"``); ``// 设置p元素的html内容

$(``'p'``).text(); ``// 返回p元素的文本内容

$(``"p"``).text(``"test"``); ``// 设置p元素的文本内容

$(``"input"``).val(); ``// 获取文本框中的值

$(``"input"``).val(``"test"``); ``// 设置文本框中的内容

—|—

CSS操作

1、样式

1

2

3

4

|

$(``"p"``).css(``"color"``); ``// 访问查看p元素的color属性

$(``"p"``).css(``"color"``,``"red"``); ``// 设置p元素的color属性为red

$(``"p"``).css({ ``"color"``: ``"red"``, ``"background"``: ``"yellow" });

// 设置p元素的color为red,background属性为yellow(设置多个属性要用{}字典形式)

—|—

2、位置

1

2

3

4

5

6

7

8

|

$(``'p'``).offset() ``// 元素在当前视口的相对偏移,Object {top: 122, left: 260}

$(``'p'``).offset().top

$(``'p'``).offset().left

$(``"p"``).position() ``// 元素相对父元素的偏移,对可见元素有效,Object {top: 117, left: 250}

$(window).scrollTop() ``// 获取滚轮滑的高度

$(window).scrollLeft() ``// 获取滚轮滑的宽度

$(window).scrollTop(``'100'``) ``// 设置滚轮滑的高度为100

—|—

3、尺寸

1

2

3

4

5

6

7

8

9

|

$(``"p"``).height(); ``// 获取p元素的高度

$(``"p"``).width(); ``// 获取p元素的宽度

$(``"p:first"``).innerHeight() ``// 获取第一个匹配元素内部区域高度(包括补白、不包括边框)

$(``"p:first"``).innerWidth() ``// 获取第一个匹配元素内部区域宽度(包括补白、不包括边框)

$(``"p:first"``).outerHeight() ``// 匹配元素外部高度(默认包括补白和边框)

$(``"p:first"``).outerWidth() ``// 匹配元素外部宽度(默认包括补白和边框)

$(``"p:first"``).outerHeight(``true``)``// 为true时包括边距

—|—

文档处理

1、内部插入

1

2

3

4

|

$(``"p"``).append(``"nick"``); ``// 每个p元素内后面追加内容

$(``"p"``).appendTo(``"div"``); ``// p元素追加到div内后

$(``"p"``).prepend(``"Hello"``); ``// 每个p元素内前面追加内容

$(``"p"``).prependTo(``"div"``); ``// p元素追加到div内前

—|—

2、外部插入

1

2

3

4

|

$(``"p"``).after(``"nick"``); ``// 每个p元素同级之后插入内容

$(``"p"``).before(``"nick"``); ``// 在每个p元素同级之前插入内容

$(``"p"``).insertAfter(``"#test"``); ``// 所有p元素插入到id为test元素的后面

$(``"p"``).insertBefore(``"#test"``); ``// 所有p元素插入到id为test元素的前面

—|—

3、替换

1

2

|

$(``"p"``).replaceWith(``"Paragraph."``); ``// 将所有匹配的元素替换成指定的HTML或DOM元素

$(``"Paragraph."``).replaceAll(``"p"``); ``// 用匹配的元素替换掉所有selector匹配到的元素

—|—

4、删除

1

2

3

|

$(``"p"``).empty(); ``// 删除匹配的元素集合中所有的子节点,不包括本身

$(``"p"``).remove([expr]); ``// 删除所有匹配的元素,包括本身

$(``"p"``).detach(); ``// 删除所有匹配的元素(和remove()不同的是:所有绑定的事件、附加的数据会保留下来)

—|—

5、复制

1

2

|

$(``"p"``).clone() ``// 克隆元素并选中克隆的副本

$(``"p"``).clone(``true``) ``// 布尔值指事件处理函数是否会被复制

—|—

循环

jQuery实现的数组循环机制

1

2

3

4

5

6

7

8

9

10

|

// 以下俩种循环虽然看似一样, 但是还是有一些区别的

// 方式一 遍历数据时,通常用

$.each(Array,``function () {

})

// 方式二 遍历DOM时, 通常用

$(element).each(``function () {

})

—|—

事件

1、事件

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

|

$(``"p"``).click(); ``// 单击事件

$(``"p"``).dblclick(); ``// 双击事件

$(``"input[type=text]"``).focus() ``// 元素获得焦点时,触发 focus 事件

$(``"input[type=text]"``).blur() ``// 元素失去焦点时,触发 blur事件

$(``"button"``).mousedown() ``// 当按下鼠标时触发事件

$(``"button"``).mouseup() ``// 元素上放松鼠标按钮时触发事件

$(``"p"``).mousemove() ``// 当鼠标指针在指定的元素中移动时触发事件

$(``"p"``).mouseover() ``// 当鼠标指针位于元素上方时触发事件

$(``"p"``).mouseout() ``// 当鼠标指针从元素上移开时触发事件

$(window).keydown() ``// 当键盘或按钮被按下时触发事件

$(window).keypress() ``// 当键盘或按钮被按下时触发事件,每输入一个字符都触发一次

$(``"input"``).keyup() ``// 当按钮被松开时触发事件

$(window).scroll() ``// 当用户滚动时触发事件

$(window).resize() ``// 当调整浏览器窗口的大小时触发事件

$(``"input[type='text']"``).change()``// 当元素的值发生改变时触发事件

$(``"input"``).select() ``// 当input 元素中的文本被选择时触发事件

$(``"form"``).submit() ``// 当提交表单时触发事件

$(window).unload() ``// 用户离开页面时

—|—

2、绑定方式

1

2

3

|

$(标签).事件(函数内容)

$(标签).bind(``"事件"``,函数名)

—|—

3、页面载入

1

2

3

4

5

6

7

8

9

10

|

// 当页面载入成功后再运行的函数事件

$(document).ready(``function``(){

``......

});

// 简写

$(``function``() {

``......

});

—|—

4、页面处理

1

2

3

4

5

6

7

8

9

10

11

12

|

// bind 为每个匹配元素绑定事件处理函数,绑定多个用{}。

$(``"p"``).bind(``"click"``, ``function``(){

``alert( $(``this``).text() );

});

$(menuF).bind({

``"mouseover"``:``function () {$(menuS).parent().removeClass(``"hide"``);},

``"mouseout"``:``function () {$(menuS).parent().addClass(``"hide"``);}

});

$(``"p"``).one(``"click"``, fun...) ``// one 绑定一个一次性的事件处理函数

$(``"p"``).unbind(``"click"``) ``// 解绑一个事件

—|—

5、页面委派

6、事件委托

1

2

3

4

5

6

7

8

9

|

$(``'ul'``).on(``"click"``,``"li"``,``function () {

``alert(999);

});

// 阐释...

// 通过它的上级(多层上级)事件委托,当点击这个标签时才会绑定事件

// 场景:

``在页面不刷新的情况下添加一行数据,行数据有操作按钮,点击并无效果,那么通过事件委托便可以解决

—|—

7、event object

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

|

// 所有的事件函数都可以传入event参数方便处理事件

$(``"p"``).click(``function``(event){

``alert(event.type); ``//"click"

});

(evnet object)属性方法:

event.pageX ``// 事件发生时,鼠标距离网页左上角的水平距离

event.pageY ``// 事件发生时,鼠标距离网页左上角的垂直距离

event.type ``// 事件的类型

event.which ``// 按下了哪一个键

event.data ``// 在事件对象上绑定数据,然后传入事件处理函数

event.target ``// 事件针对的网页元素

event.preventDefault() ``// 阻止事件的默认行为(比如点击链接,会自动打开新页面)

event.stopPropagation()``// 停止事件向上层元素冒泡

—|—

动画效果

1、基点

1

2

3

4

|

$(``"p"``).show() ``// 显示隐藏的匹配元素

$(``"p"``).show(``"slow"``); ``// 参数表示速度,("slow","normal","fast"),也可设置为毫秒

$(``"p"``).hide() ``// 隐藏显示的元素

$(``"p"``).toggle(); ``// 切换 显示/隐藏

—|—

2、滑动

1

2

3

|

$(``"p"``).slideDown(``"1000"``); ``// 用1000毫秒时间将段落滑下

$(``"p"``).slideUp(``"1000"``); ``// 用1000毫秒时间将段落滑上

$(``"p"``).slideToggle(``"1000"``); ``// 用1000毫秒时间将段落滑上,滑下

—|—

3、淡入淡出

1

2

3

4

|

$(``"p"``).fadeIn(``"900"``); ``// 用900毫秒时间将段落淡入

$(``"p"``).fadeOut(``"900"``); ``// 用900毫秒时间将段落淡出

$(``"p"``).fadeToggle(``"900"``); ``// 用900毫秒时间将段落淡入,淡出

$(``"p"``).fadeTo(``"slow"``, 0.6); ``// 用900毫秒时间将段落的透明度调整到0.6

—|—

4、回调函数

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

|

// 回调函数指什么 一个动作完成之后执行的一段代码

// DEMO

``

``Title

``

``

``

``

helloworld helloworld helloworld

—|—

扩展(插件机制)

此机制可扩展Jquery的方法或者定制一些其它的方法

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

|

``

``Title

``

—|—

对象访问

1

2

3

4

5

6

7

8

9

10

11

12

|

$.trim() ``// 去除字符串两端的空格

$.each() ``// 遍历一个数组或对象,for循环

$.inArray() ``// 返回一个值在数组中的索引位置,不存在返回-1

$.grep() ``// 返回数组中符合某种标准的元素

$.extend() ``// 将多个对象,合并到第一个对象

$.makeArray() ``// 将对象转化为数组

$.type() ``// 判断对象的类别(函数对象、日期对象、数组对象、正则对象等等

$.isArray() ``// 判断某个参数是否为数组

$.isEmptyObject() ``// 判断某个对象是否为空(不含有任何属性)

$.isFunction() ``// 判断某个参数是否为函数

$.isPlainObject() ``// 判断某个参数是否为用"{}"或"new Object"建立的对象

$.support() ``// 判断浏览器是否支持某个特性

—|—

jQuery拾遗

hover()

// 语法

$(selector).hover(inFunction,outFunction)

// 等同于

$( selector ).mouseover( handlerIn ).mouseout( handlerOut );

参数 描述

inFunction 必需。规定 mouseover 事件发生时运行的函数。

outFunction 可选。规定 mouseout 事件发生时运行的函数。

// DEMO

$("p").hover(function(){

$("p").css("background-color","yellow");

},function(){

$("p").css("background-color","pink");

});

data()


实例

1

2

3

4

5 Title

6

39

40

41

42

43

44

45

46

47

63

64

Title

  • python笔记(二十四):JQuery  第1张
  • python笔记(二十四):JQuery  第2张
  • python笔记(二十四):JQuery  第3张
  • python笔记(二十四):JQuery  第4张
  • python笔记(二十四):JQuery  第5张
  • python笔记(二十四):JQuery  第6张
  • python笔记(二十四):JQuery  第7张
  • python笔记(二十四):JQuery  第8张

// offset() 方法设置或返回被选元素相对于文档的偏移坐标。

标题

内容......

拖动面板

面板拖动

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aP1NqNQe-1692921628911)(https://common.cnblogs.com/images/copycode.gif)]

Title

// 在线进入编辑模式,样式还是可以调整的更加好看一些的

Title

蔬菜水果
黄瓜香蕉
胡萝卜椰子

Title

This is a Toggle.

参考链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: