博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jQuery入门、jQuery选择器、jQuery操作
阅读量:6612 次
发布时间:2019-06-24

本文共 8300 字,大约阅读时间需要 27 分钟。

一、什么是jQuery及如何使用

1.1 jQuery 简介

jQuery是一个兼容多浏览器的javascript函数库(把我们常用的一些功能进行了封装,方便我们来调用,提高我们的开发效率。),核心理念是write less,do more(写得更少,做得更多)

1.2 jQuery 和 Js 的区别

Javascript是一门编程语言,我们用它来编写客户端浏览器脚本。

jQuery是javascript的一个库(框架),包含多个可重用的函数,用来辅助我们简化javascript开发。

图片描述

注意:jQuery能做的javascipt都能做到,而javascript能做的事情,jQuer不一定能做到。

二、jQuery 的基本使用

2.1 jQuery 的入口函数

  • 入口方式一
$(document).ready(function() {         });
  • 入口方式二
$(function() {        });

2.2 $(document).ready和window.onload 区别

windows.onload方法是在网页中所有的元素(包括元素的所有关联文件)完全加载到浏览器后才执行,即Javascript此时才可以访问网页中的任何元素。jQuery中的$(document).ready()方法注册的事件处理程序, 在DOM完全就绪时就可以被调用。此时,网页的所有元素对jQuery而言都是可以访问的,但是,这并不意味着这些元素关联的文件都已经下载完毕。

2.3 事件处理程序

  • 事件源

     JS方式:document.getElementById(“id”);

     jQuery方式:$(“#id”);

  • 事件

     Js方式 :document.getElementById(“id”).onclick

     jQuery方式: $(“#id”).click

事件区别:jQuery 事件不带on
  • 事件处理程序

     JS的书写方式:

document.getElementById(“id”).onclick = function(){                  // 语句              }

      jQuery 的书写方式:

$(“#id”).click(function(){                // 语句            });

2.4 jQuery 初探

jQuery 语法是主要为 HTML元素的选取编制的,可以对元素执行某些操作。

基本语法是:$(selector).action()

  • 美元符号定义 jQuery
  • 选择器(selector)“查询”和“查找” HTML 元素
  • jQuery的action() 执行对元素的操作
    

图片描述

三、DOM对象与jQuery对象的转换

3.1 DOM原生对象转换为jQuery对象

    

图片描述

3.2 jQuery对象转换为DOM原生对象

有两种方式

  1. jQuery提供get(index)方法
hello world!

图片描述

  1. jQuery对象是类数组对象($(selector)[index])
hello world!

四、jQuery 选择器

4.1 CSS基本选择器

图片描述

用法见下面的小例子:

Hello
Hi

Good

World!
Haha

图片描述

4.2 层级选择器

图片描述

hello world!
  • Hi
  • Ha
  • God

I

LOVE

YOU

图片描述

4.3 表单域选择器

表单域指网页中的input textarea select button元素。 jQuery中表单域选择器专门用于从文档中选择表单域

图片描述

这里呢,小编就挑几个重要的选择器给大家演示一下就行了,其实,掌握前两种的选择器就够用了

                    

图片描述

4.4 表单域属性过滤选择器

图片描述

eg:

   

我的爱好是:

游泳 画画 敲代码

喜欢的城市:

图片描述

4.5 伪类过滤选择器

根据索引值对元素进行筛选,类似于CSS的伪类选择器,以冒号(:)开头;并且和另外一个选择器一起使用(header animated除外)

图片描述

hello

hi

good

  • 11111
  • 22222
  • 33333
  • 44444

你好

我好

大家好

图片描述

4.6 内容过滤选择器

html文档中,元素的内容可以是文本或子元素

图片描述

he

hello

hehe

123我爱你

图片描述

4.7 简单属性过滤选择器

图片描述

hello
world

小周末

123我爱你

老男孩
明人不说暗话

图片描述

4.8 子元素过滤选择器

注意:子元素过滤选择器必须某个选择器一起使用

图片描述

  • 悟空
  • Alone
  • 满满
  • 黑白情书
纸短情长

图片描述

五、小案例

5.1 实现多标签页效果

*{margin:0;padding:0;}        ul li{float: left; list-style: none; width: 80px;height: 40px;line-height: 40px;cursor: pointer;text-align: center;}        #container{position:relative;}        #content1,#content2,#content3{position:absolute;top:40px;left: 0;width:300px;height:200px;padding:30px;}        #tab1,#content1{background:pink;}        #tab2,#content2{background:skyblue;}        #tab3,#content3{background:orange;}

实现多页标签切换

  • 关于我
  • 个人经历
  • 教育背景
具有较强的用户研究、市场分析能力,对中国用户的社会形态、生活方式有丰富的认识和独特的见解;对色彩、材质感觉细腻而敏感,具有色彩、材质、表面处理的研究和趋势分析能力,对当代中国的色彩具有深入的理解和自己的观点;能够准确把握社会文化、流行趋势,对中国现代社会及传统文化背景有仔细的研究和深刻的理解;对设计工作充满热情,有较强的设计能力,设计的产品范围广泛。
2017年5月,具有设计爱好的三人在一次电话共同组建三人小组,畅谈现如今设计行业发展趋势,6月结交在一起,共同协商千典品牌设计公司发展流程,7月正是注册河南千典文化传播有限公司成立。创定法定代表人,公司经营范围包括:设计、制作、代理、发布国内广告,企业管理咨询,企业营销策划,展览展示策划,文化艺术交流活动策划,平面设计,包装设计,企业形象策划等。
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo

图片描述

六、dom的操作、事件

6.1 dom基本操作方法

html(),text(),val(),attr(),removeAttr()

6.1.1 html()

html() 方法返回或设置被选元素的内容 (inner HTML)

  • 从前从前
  • 因为爱所以爱
  • 两颗不再相遇的行星
  • 恋爱啦

图片描述

6.1.2 text()

text()方法是取得或设置所有匹配元素的文本内容

  • 从前从前
  • 因为爱所以爱
  • 两颗不再相遇的行星
  • 恋爱啦

图片描述

6.1.3 text()方法和html()方法区别:

text()用来设置dom节点的文本内容时(不识别标签元素,按照文本显示); html()用来设置dom节点内容时(识别标签元素)。

6.1.4 val()

val()方法是设置或返回表单字段的值

  • $(selector).val(value)

为标签元素添加值,如果标签元素有值,则修改相应的值

eg:

    
  • $(selector).val()

查找标签元素的value值

    

6.1.5 attr()

设置或返回被选元素的属性值,会覆盖原有属性

  • $(selector).attr(attribute)

查找该属性所对应的属性值

eg:

    
  • $(selector).attr(attribute,value) 设置被选元素的属性和值

可以为该元素设置样式或者增加属性

eg:

    

图片描述

6.1.6 removeAttr()

从字面意思解释就是 移除相应属性

eg:

helloworld
.box{width: 100px;height:100px;background:pink;}

七、jQuery的操作样式

7.1 $(selector).attr(attribute,value)

小编寄语:attr() 可以改变元素的现有样式,看下面的小例子

.one{width: 100px;height:100px;background:pink;}      .two{width:200px;height:200px;background:orange;}

图片描述

7.2 $(selector).addClass(class)

小编寄语:这个意思就是在原有的基础上再添加一些其他的类,看例子:

.one{width: 100px;height:100px;background:pink;}      /* 添加边框 */      .two{border:5px solid red;}      /* 添加阴影 */      .three{box-shadow:5px 5px orange;}

图片描述

7.3 $(selector).removeClass(class)

注意: 移除一个或多个类

  1. 不传参 - 删除所有样式

eg:

  
hello world!

图片描述

  1. 传参 - 删除指定样式

看例子:

eg:

  
hello world!

图片描述

7.4 $(selector).toggleClass(class)

给大家一个简单的记法: 有这个东西就删掉,没有就加上

这里就不举例子了,有心的你可以把 7.3 7.2 的东西 糅合一下就行了

7.5 $(selector).hasClass(class)

这个比较简单,意思就是,检查有没有这个类,如果有返回true,没有返回false,这个就不举例子,你们可以尝试一下,这个不经常用.

7.6 css() 方法

设置或返回被选元素的一个或多个样式属性.前面小编也经常用这个方法来设置元素的属性,这里给出具体详解.

  1. css("propertyname"); // 获取样式的属性值
  2. css("propertyname", "value"); //设置单个样式
  3. css({"propertyname":"value","propertyname":"value",...}); // 设置多个样式

综合上面三条的例子:

  

图片描述

八、jQuery遍历节点

8.1 parent() 方法

返回被选元素的直接父元素
hello world!

图片描述

8.2 parents() 方法

返回被选元素的所有祖先元素,它一路向上直到文档的根元素 (<html>)
hello world!

图片描述

8.3 children() 方法

返回被选元素的所有直接子元素
hello world!

你好,世界!

图片描述

8.4 find(elem) 方法

返回被选元素的后代元素,一路向下直到最后一个后代
  • hello
  • world
  • hello world
  • 你好,世界!

图片描述

8.5 prev() 方法

返回被选元素的上一个同胞元素
  • hello
  • world
  • hello world
  • 你好,世界!

图片描述

8.6 next() 方法

返回被选元素的下一个同胞元素
  • hello
  • world
  • hello world
  • 你好,世界!

图片描述

8.7 siblings() 方法

返回被选元素的所有同胞元素
  • hello
  • world
  • hello world
  • 你好,世界!

图片描述

九、操作DOM节点

9.1 DOM内部插入(或追加)数据

  • append(content) -向每个匹配的元素内部追加内容或追加子节点
  • appendTo(content)把所有匹配的元素追加到另一个指定的元素集合中
  • prepend(content) 在被选元素的开头插入内容
  • prependTo(content) 把所有匹配的元素前置到指定的元素集合中

以上四种情况的例子:

good!

图片描述

9.2 jQuery外部插入

  • after(content) 在每个匹配的元素之后作为兄弟节点插入内容
  • before(content) 方法在被选元素之前作为兄弟节点插入内容
  • insertAfter(content) 把元素插入到所有匹配的元素的后面
  • insertBefore(content) 把元素插入到所有匹配的元素的后面

前两个例子:

  • 水果
    • 香蕉
    • 葡萄
  • 运动
    • 跑步
    • 打篮球
  • 方向
    • 东南
    • 西北

图片描述

后两个例子:

  • 水果
    • 香蕉
    • 葡萄
  • 运动
    • 跑步
    • 打篮球
  • 方向
    • 东南
    • 西北

图片描述

9.3 jQuery删除元素

remove() - 删除被选元素(及其后代)
empty() - 从被选元素中删除子元素,清空内容
  • 水果
    • 香蕉
    • 葡萄
  • 运动
    • 跑步
    • 打篮球
  • 方向
    • 东南
    • 西北

图片描述

图片描述

小编分析:乍一看两张照片没什么区别,其实是不一样滴,remove 删除的比较彻底,而empty 删除的不是很彻底,第一张是remove删除后的结果,而另一张是empty删除的结果

9.4 jQuery替换元素

  • replaceWith(content) 将匹配元素替换成指定的HTML或DOM元素
前面的元素是被替换元素,后面的元素是替换元素
  • replaceAll(selector) 将元素替换掉 selector匹配到的元素
前面的元素是替换元素,后面的元素是被替换元素

eg:

Hi
Good!

图片描述

9.5 jQuery克隆元素

  • 语法: clone([Even1], [Even2])
  • 解释一:无参数,只复制元素,不复制该元素的事件处理函数,
  • 用法:$("p").clone().appendTo('.box1');
  • 解释二: 有一个参数,true,复制元素及其本身的事件处理函数
  • 用法:$("p").clone(true).appendTo('.box1');
  • 解释三:有两个参数,true(第二个默认为true)不仅复制元素及其本身的事件处理函数而且会复制子元素
  • 用法:$("p").clone(true, true).appendTo('.box1');

无参的例子:

Hello

图片描述

一个参数的例子:

Hello

图片描述

两个参数的例子:

Hello 你是我的小可爱

图片描述

十、小案例

10.1 实现开关门效果

    
树形列表
<<
内容的主体

图片描述

十一、总结

确实有点多,不过没关系,慢慢来!相信自己!

转载地址:http://graso.baihongyu.com/

你可能感兴趣的文章
urllib模块
查看>>
XML转义字符
查看>>
微信小程序之简单记账本开发记录(六)
查看>>
死锁和活锁
查看>>
JavaScript的简单继承实现案例
查看>>
<Linux命令行学习 第一节> CentOS在虚拟机的安装
查看>>
mysql设置字符集CHARACTER SET
查看>>
Perl完全自学手册图文教程
查看>>
python(5)字典
查看>>
用createrepo配置Yum本地源
查看>>
wordpress拿WebShell
查看>>
脚本结构和执行
查看>>
warden创建容器的过程
查看>>
【c++】size_t 和 size_type的区别
查看>>
SpringBoot之浅析配置项解析(三)
查看>>
15.2. switchport trunk encapsulation dot1q 提示 invaild input at^marker.
查看>>
getline函数(精华版)
查看>>
互联网辅助代理IP软件的应用需守牢数据安全的“底线”
查看>>
快速排序及其优化
查看>>
程序猿生存指南-10 敲定工作
查看>>