第一章 jQuery基础

第一章 jQuery基础

jQuery库文件

  • jQuery库分开发版和发布版

    • | 名称 | 大小 | 说 明 |
      | -------------------------------- | -------- | ------------------------------------------------------------ |
      | jquery-3.版本号.js(开发版) | 约286KB | 完整无压缩版本,主要用于测试、学习和开发 |
      | jquery-3.版本号.min.js(发布版) | 约94.8KB | 经过工具压缩或经过服务器开启Gzip压缩,主要应用于发布的产品和项目 |
  • 在页面中引入jQuery

    • <script src="js/jquery-3.3.1.min.js" type="text/javascript"></script>
      

jQuery基本语法

  • 使用jQuery弹出提示框
<script>
     $(document).ready(function() {		//为页面加载事件绑定方法
        alert("我欲奔赴沙场征战jQuery,势必攻克之!");
    });
</script>

$(document).ready()

  • $(document).ready()与window.onload类似,但也有区别
window.onload $(document).ready()
执行时机 必须等待网页中所有的内容加载完毕后(包括图片、flash、视频等)才能执行 网页中所有DOM文档结构绘制完毕后即刻执行,可能与DOM元素关联的内容(图片、flash、视频等)并没有加载完
编写个数 同一页面不能同时编写多个 同一页面能同时编写多个
简化写法 $(function(){ //执行代码 }) ;

jQuery选择器

  • jQuery 语法
    • jQuery 语法是为 HTML 元素的选取编制的,可以对元素执行某些操作
    • 基础语法是:$(selector).action()

jQuery基本选择器

  • 基本选择器包括标签选择器、类选择器、ID选择器、并集选择器和全局选择器
名称 语法构成 描述 示例
标签选择器 element 根据给定的标签名匹配元素 $(“h2” )选取所有h2元素
类选择器 .class 根据给定的class匹配元素 $(" .title")选取所有class为title的元素
ID选择器 #id 根据给定的id匹配元素 $(" #title")选取id为title的元素
并集选择器 selector1,selector2,…,selectorN 将每一个选择器匹配的元素合并后一起返回 $(“div,p,.title” )选取所有div、p和拥有class为title的元素
全局选择器 * 匹配所有元素 $(“*” )选取所有元素

标签选择器

  • 标签选择器根据给定的标签名匹配元素
$(document).ready(function(){
    $("dt").click(function(){
        $("dd").css("display","block"); 	//设置<dd>标签中的内容显示出来

    });
    $("h1").css("color","blue");	//设置<h1>标签中的字体颜色为蓝色
})

类选择器

  • 类选择器根据给定的class匹配元素
$(".price").css({"background":"#efefef","padding":"5px"}); //设置class为price元素的背景颜色和内边距

ID选择器

$("#author").css("color","#083499");	//设置id为author的元素的字体颜色

并集选择器

  • 并集选择器用来合并元素集合
$(".intro,dt,dd").css("color","#ff0000");

全局选择器

  • 全局选择器可以获取所有元素
$("*").css("font-weight","bold");	//设置所有元素的字体加粗显示

jQuery层次选择器

  • 层次选择器通过DOM 元素之间的层次关系来获取元素
名称 语法构成 描述 示例
后代选择器 ancestor descendant 选取ancestor元素里的所有descendant(后代)元素 $(“#menu span” )选取#menu下的元素
子选择器 parent>child 选取parent元素下的child(子)元素 $(“#menu>span” )选取#menu的子元素
相邻元素选择器 prev+next 选取紧邻prev元素之后的next元素 $(" h2+dl " )选取紧邻元素之后的同辈元素
同辈元素选择器 prev~sibings 选取prev元素之后的所有siblings元素 $(" h2~dl " )选取元素之后所有的同辈元素

后代选择器

  • 后代选择器用来获取元素的后代元素
$(".textRight p").css("color","red");	//设置class为textRight元素中的所有<p>标签的字体全部为红色

子选择器

  • 子选择器用来获取元素的元素
$(".textRight>p").css("color","red");

相邻选择器

  • 相邻选择器用来选取紧邻目标元素的下一个元素
$("h1+p").css(text-decoration","underline"); 

同辈选择器

  • 同辈选择器用来选取目标元素之后的所有同辈元素
$("h1~p").css("text-decoration","underline");

jQuery属性选择器

  • 属性选择器通过HTML元素的属性来选择元素
语法构成 描述 示例
[attribute^=value] 选取给定属性是以某些特定值开始的元素 $(" [href^=‘en’]" )选取href属性值以en开头的元素
[attribute$=value] 选取给定属性是以某些特定值结尾的元素 ( " [ h r e f (" [href ("[href=‘.jpg’]" )选取href属性值以.jpg结尾的元素
[attribute*=value] 选取给定属性是以包含某些值的元素 $(" [href* =‘txt’]" )选取href属性值中含有txt的元素

根据属性名获取元素

  • 属性选择器可以根据是否包含某属性来选取元素
    • a标签带有class属性
$("#news a[class]").css("background","#c9cbcb");

根据属性值获取元素

  • 属性选择器可以根据属性的值来选取元素
    • class属性值为hot
$("#news a[class='hot']").css("background","#c9cbcb");
  • 属性选择器可以指定选取不等于属性是某个特定值的元素
    • class值不等于hot
$("#news a[class!='hot']").css("background","#c9cbcb");

根据属性值包含特定的值获取元素

  • 属性选择器可以指定属性值以指定值开头的元素
    • a标签href属性值以www开头
$("#news a[href^='www']").css("background","#c9cbcb");
  • 属性选择器可以指定属性值以指定值结尾的元素
    • a标签href属性值以html结尾
$("#news a[href$='html']").css("background","#c9cbcb");
  • 属性选择器可以指定属性值包含指定值的元素
    • a标签href属性值包含“k2”的元素
$("#news a[href*='k2']").css("background","#c9cbcb");

过滤选择器

  • 通过特定的过滤规则来筛选出所需的元素
  • 主要分类
    • 基本过滤选择器
    • 可见性过滤选择器
    • 表单对象过滤选择器
    • 内容过滤选择器、子元素过滤选择器……

基本过滤选择器

语法 描述 示例
:first 选取第一个元素 $(" li:first" )选取所有元素中的第一个元素
:last 选取最后一个元素 $(" li:last" )选取所有元素中的最后一个元素
:not(selector) 选取去除所有与给定选择器匹配的元素 $(" li:not(.three)" )选取class不是three的元素
:even 选取索引是偶数的所有元素(index从0开始) $(" li:even" )选取索引是偶数的所有元素
:odd 选取索引是奇数的所有元素(index从0开始) $(" li:odd" )选取索引是奇数的所有元素
语法 描述 示例
:eq(index) 选取索引等于index的元素(index从0开始) $(“li:eq(1)” )选取索引等于1的元素
:gt(index) 选取索引大于index的元素(index从0开始) $(" li:gt(1)" )选取索引大于1的元素(注:大于1,不包括1)
:lt(index) 选取索引小于index的元素(index从0开始) $(“li:lt(1)” )选取索引小于1的元素(注:小于1,不包括1)
:header 选取所有标题元素,如h1~h6 $(“:header” )选取网页中所有标题元素
:focus 选取当前获取焦点的元素 $(“:focus” )选取当前获取焦点的元素
:animated 选择所有动画 $(“:animated” )选取当前所有动画元素

可见性过滤选择器

语法 描述 示例
:visible 选取所有可见的元素 $(“:visible” )选取所有可见的元素
:hidden 选取所有隐藏的元素 $(“:hidden” ) 选取所有隐藏的元素
$("p:hidden").show();
$("p:visible").hide();

jQuery选择器注意事项

1、特殊符号的转义

<div id="id#a">aa</div>
<div id="id[2]">cc</div>
  • 获取这两个元素的选择器
//错误获取方法
$("#id#a");
$("#id[2]");

//正确获取方法
$("#id\\#a");
$("#id\\[2\\]");

2、选择器中的空格

  • 选择器的书写规范很严格,多一个空格或少一个空格,都会影响选择器的效果
//选取class为“test”的元素内部的隐藏元素
var $t_a = $(".test :hidden"); //带空格的jQuery选择器

//选取隐藏的class为“test”的元素
var $t_b = $(".test:hidden");  //不带空格的jQuery选择器

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


学习编程是顺着互联网的发展潮流,是一件好事。新手如何学习编程?其实不难,不过在学习编程之前你得先了解你的目的是什么?这个很重要,因为目的决定你的发展方向、决定你的发展速度。
IT行业是什么工作做什么?IT行业的工作有:产品策划类、页面设计类、前端与移动、开发与测试、营销推广类、数据运营类、运营维护类、游戏相关类等,根据不同的分类下面有细分了不同的岗位。
女生学Java好就业吗?女生适合学Java编程吗?目前有不少女生学习Java开发,但要结合自身的情况,先了解自己适不适合去学习Java,不要盲目的选择不适合自己的Java培训班进行学习。只要肯下功夫钻研,多看、多想、多练
Can’t connect to local MySQL server through socket \'/var/lib/mysql/mysql.sock问题 1.进入mysql路径
oracle基本命令 一、登录操作 1.管理员登录 # 管理员登录 sqlplus / as sysdba 2.普通用户登录
一、背景 因为项目中需要通北京网络,所以需要连vpn,但是服务器有时候会断掉,所以写个shell脚本每五分钟去判断是否连接,于是就有下面的shell脚本。
BETWEEN 操作符选取介于两个值之间的数据范围内的值。这些值可以是数值、文本或者日期。
假如你已经使用过苹果开发者中心上架app,你肯定知道在苹果开发者中心的web界面,无法直接提交ipa文件,而是需要使用第三方工具,将ipa文件上传到构建版本,开...
下面的 SQL 语句指定了两个别名,一个是 name 列的别名,一个是 country 列的别名。**提示:**如果列名称包含空格,要求使用双引号或方括号:
在使用H5混合开发的app打包后,需要将ipa文件上传到appstore进行发布,就需要去苹果开发者中心进行发布。​
+----+--------------+---------------------------+-------+---------+
数组的声明并不是声明一个个单独的变量,比如 number0、number1、...、number99,而是声明一个数组变量,比如 numbers,然后使用 nu...
第一步:到appuploader官网下载辅助工具和iCloud驱动,使用前面创建的AppID登录。
如需删除表中的列,请使用下面的语法(请注意,某些数据库系统不允许这种在数据库表中删除列的方式):
前不久在制作win11pe,制作了一版,1.26GB,太大了,不满意,想再裁剪下,发现这次dism mount正常,commit或discard巨慢,以前都很快...
赛门铁克各个版本概览:https://knowledge.broadcom.com/external/article?legacyId=tech163829
实测Python 3.6.6用pip 21.3.1,再高就报错了,Python 3.10.7用pip 22.3.1是可以的
Broadcom Corporation (博通公司,股票代号AVGO)是全球领先的有线和无线通信半导体公司。其产品实现向家庭、 办公室和移动环境以及在这些环境...
发现个问题,server2016上安装了c4d这些版本,低版本的正常显示窗格,但红色圈出的高版本c4d打开后不显示窗格,
TAT:https://cloud.tencent.com/document/product/1340