jQuery入门(一)--jQuery中的选择器
什么是jQuery?
jQuery的官网 http://jquery.com/
jQuery就是一个js库,使用jQuery的话,会比使用JavaScript更简单。
js库:把一些常用到的方法写到一个单独的js文件,使用的时候直接去引用这js文件就可以了。(animate.js、common.js)
我们知道了,jQuery其实就是一个js文件,里面封装了一大堆的方法方便我们的开发,其实就是一个加强版的common.js,因此我们学习jQuery,其实就是学习jQuery这个js文件中封装的一大堆方法。
jQuery的版本
官网下载地址:http://jquery.com/download/
jQuery版本有很多,分为1.x 2.x 3.x
大版本分类:
1.x版本:能够兼容IE678浏览器
2.x版本:不兼容IE678浏览器
1.x和2.x版本jquery都不再更新版本了,现在只更新3.x版本。3.x版本:不兼容IE678,更加的精简(在国内不流行,因为国内使用jQuery的主要目的就是兼容IE678)
关于压缩版和未压缩版
jquery-1.12.4.min.js:压缩版本,适用于生产环境,因为文件比较小,去除了注释、换行、空格等东西,但是基本没有颗阅读性。
jquery-1.12.4.js:未压缩版本,适用于学习与开发环境,源码清晰,易阅读。
jQuery的入口函数
使用jQuery的三个步骤:
1. 引入jQuery文件
2. 入口函数
3. 功能实现
关于jQuery的入口函数:
//第一种写法
$(document).ready(function() {});
//第二种写法
$(function() {});
jQuery入口函数与js入口函数的对比
1. JavaScript的入口函数要等到页面中所有资源(包括图片、文件)加载完成才开始执行。
2. jQuery的入口函数只会等待文档树加载完成就开始执行,并不会等待图片、文件的加载。
jQuery对象与DOM对象的区别(重点)
1. DOM对象:使用JavaScript中的方法获取页面中的元素返回的对象就是dom对象。
2. jQuery对象:jquery对象就是使用jquery的方法获取页面中的元素返回的对象就是jQuery对象。
3. jQuery对象其实就是DOM对象的包装集(包装了DOM对象的集合(伪数组))
4. DOM对象与jQuery对象的方法不能混用。
DOM对象转换成jQuery对象:【联想记忆:花钱】
var $obj = $(domObj);
// $(document).ready(function(){});就是典型的DOM对象转jQuery对象
jQuery对象转换成DOM对象:
var $li = $(“li”);
//第一种方法(推荐使用)
$li[0]
//第二种方法
$li.get(0)
练习:隔行变色案例.html.
选择器
什么是jQuery选择器
jQuery选择器是jQuery为我们提供的一组方法,让我们更加方便的获取到页面中的元素。注意:jQuery选择器返回的是jQuery对象。
jQuery选择器有很多,基本兼容了CSS1到CSS3所有的选择器,并且jQuery还添加了很多更加复杂的选择器。
jQuery选择器虽然很多,但是选择器之间可以相互替代,就是说获取一个元素,你会有很多种方法获取到。所以我们平时真正能用到的只是少数的最常用的选择器。
基本选择器
名称 | 用法 | 描述 |
---|---|---|
ID选择器 | $(“#id”); | 获取指定ID的元素 |
类选择器 | $(“.class”); | 获取同一类class的元素 |
标签选择器 | $(“div”); | 获取同一类标签的所有元素 |
并集选择器 | $(“div,p,li”); | 使用逗号分隔,只要符合条件之一就可。 |
交集选择器 | $(“div.redClass”); | 获取class为redClass的div元素 |
总结:跟css的选择器用法一模一样。
层级选择器
名称 | 用法 | 描述 |
---|---|---|
子代选择器 | $(“ul>li”); | 使用>号,获取儿子层级的元素,注意,并不会获取孙子层级的元素 |
后代选择器 | $(“ul li”); | 使用空格,代表后代选择器,获取ul下的所有li元素,包括孙子等 |
跟CSS的选择器一模一样。
过滤选择器
这类选择器都带冒号:
名称 | 用法 | 描述 |
---|---|---|
:eq(index) | $(“li:eq(2)”).css(“color”, ”red”); | 获取到的li元素中,选择索引号为2的元素,索引号index从0开始。 |
:odd | $(“li:odd”).css(“color”, ”red”); | 获取到的li元素中,选择索引号为奇数的元素 |
:even | $(“li:even”).css(“color”, ”red”); | 获取到的li元素中,选择索引号为偶数的元素 |
:last | $(“li:last”).css(“color”, ”red”); | 获取到的li元素中,选择最后一个元素 |
案例:隔行变色.
筛选选择器(方法)
筛选选择器的功能与过滤选择器有点类似,但是用法不一样,筛选选择器主要是方法。
名称 | 用法 | 描述 |
---|---|---|
children(selector) | $(“ul”).children(“li”) | 相当于$(“ul>li”),子类选择器 |
find(selector) | $(“ul”).find(“li”); | 相当于$(“ul li”),后代选择器 |
siblings(selector) | $(“#first”).siblings(“li”); | 查找兄弟节点,不包括自己本身。 |
parent() | $(“#first”).parent(); | 查找父亲 |
eq(index) | $(“li”).eq(2); | 相当于$(“li:eq(2)”),index从0开始 |
next() | $(“li”).next() | 找下一个兄弟 |
prev() | $(“li”).prev() | 找上一次兄弟 |
【案例:下拉菜单】this+children+mouseenter+mouseleave
【案例:突出展示】siblings+find
【案例:手风琴】next+parent
【案例:淘宝精品】index+eq
注意事项
- window.onload与ready方法的区别
- ready:DOM结构加载完成就执行,不必等待页面中的图片或其他外部文件都加载完成。并且可以写多个$(function).ready();
*onload:是页面所有元素都加载完毕,包括图片等,并且只能执行一次,多次赋值将会覆盖。
*通过js中的DOM.style.属性,可以给DOM元素添加属性,如:
DOM.style.display = “none”; 该元素将被隐藏
- ready:DOM结构加载完成就执行,不必等待页面中的图片或其他外部文件都加载完成。并且可以写多个$(function).ready();
- IE浏览器特有属性:innerText,该属性可以给DOM元素添加内容
如 DOM.innerText = “我是内容”;但低版本的火狐浏览器不支持该属性,支持textContent属性。 - jq中的text()方法用法:(DOM).text(param);可以给jq对象设置内容文本;(DOM).text(param);可以给jq对象设置内容文本;(DOM).text(param);可以给jq对象设置内容文本;(DOM).text(),返回jq对象的内容文本。
- jq的滑动效果:$(DOM).show(time):左上向右下滑动展示 $(“DOM”).slideDown(time) : 从上向下滑动显示
$(“DOM”).fadeIn(time) : 慢慢映入屏幕 三种方法的执行速度,均由time属性控制。 - jq中 typeof $ === jQuery ==> true
- mouseover与mouseenter的区别
- mouseover:当鼠标指针位于元素上方时,就会发生mouseover事件,如果给某个div设定一个mouseover事件,其子孙后代都可以响应事件,并且从父级进入自己也会触发这个效果。
- mouseenter是当鼠标穿过元素时,会发生mouseenter事件,只触发一次。
- mouseout为mouseover鼠标的相反事件;mouseleave为mouseenter的鼠标相反事件。
//执行的效果为:从上到下穿过.over的div,x将变为3;从上到下穿过.enter的div,y将变为1
<div class="over" style="background-color:lightgray;padding:20px;width:40%;float:left"><h2 style="background-color:white;">被触发的 Mouseover 事件:<span></span></h2>
</div>
<div class="enter" style="background-color:lightgray;padding:20px;width:40%;float:right"><h2 style="background-color:white;">被触发的 Mouseenter 事件:<span></span></h2>
</div>
<script>$(document).ready(function(){var x = 0;var y = 0;$("div.over").mouseover(function(){$(".over span").text(x+=1);});$("div.enter").mouseenter(function(){$(".enter span").text(y+=1);});});
</script>
- jq的hide与show方法 (DOM).show():使jq元素显示;(DOM).show():使jq元素显示;(DOM).show():使jq元素显示;(DOMO).hide():使jq元素隐藏
- jq元素的index():显示jq元素的序列,从0开始,如$(“li”).index():将返回jq元素的的位置。
jQuery入门(一)--jQuery中的选择器相关推荐
- jQuery入门-初识jQuery
目录 什么是jQuery? 下载jQuery jQuery的入口函数 对比JavaScript的入口函数jQuery的入口函数,执行时机 jQuery对象和DOM对象的区别 jQuery对象和DOM对 ...
- jquery 入门(jquery是什么/与JavaScript的联系与区别/jquery版本/引包/入口函数)
1. 为何要学jQuery (1)JS的劣势 (2)jQuery是什么(理解) jQuery是别人帮我们封装好的库. jQuery是JS的一个库,封装了开发过程中常用的功能,能够提高开发效率. JS ...
- 前端的第二十四天(jQuery入门、常用API)
前端的第二十四天(jQuery入门.常用API) 一.jQuery入门 1.jQuery 概述 2.jQuery 的基本使用 官网地址:点我跳转 各个版本的下载:点我跳转 二.jQuery常用API ...
- jQuery——入门(一)JQuery的简介与基本选择器的使用
JQuery入门(一)-- 基本简介与基本选择器的使用 一.jQuery简介 jquery是2006年1月由美国人John Resig在纽约barcamp发布,目前已经成为辅助javascript开发 ...
- jQuery入门选择器
Hilo Everybody wellcometo my channel ! 今天Lion带大家初步认识一下 jQuery(jquery01) 首先第一个我们来聊聊 & ...
- JQuery入门(1) - 选择器
JQuery入门(1) - 选择器 $("元素") // 选取元素 $("元素.类名") // 选取元素中class为"类名"的元素 $(& ...
- jQuery入门、选择器、事件、静态方法、动画
目录 第一章-jQuery基础知识 1.jQuery入门 1.1.jQuery介绍 1.2.jQuery安装 1.3.jQuery函数 1.4.jQuery对象 2.jQuery选择器 3.jQuer ...
- jQuery入门基本语法选择器
文章目录 一.了解什么是jQuery&为什么要学jQuery? 二.jQuery的基本语法? 三.jQuery如何使用? 四.jQuery的选择器? 五.推荐使用开发工具:HBuilder X ...
- jQuery入门基础——选择器
jQuery01-入门-选择器 目标:jQuery第一次课 入门 和 选择器 重点:选择器 问: 3W1H: What:jQuery是什么? Why:为什么要学jQuery? Where:什么情况下用 ...
最新文章
- 太赫兹芯片是什么原理_太赫兹波养生鞋 芯片、鞋垫和材质的详细了解专利技术~太赫兹芯...
- 应用案例 | Blink 有何特别之处?菜鸟供应链场景最佳实践
- Linux安装jupyter debugger+Conda设置proxy代理
- 词云制作 Python
- FM IPRO - GET_ADDIN_SCHEMA
- 运行虚拟机报错:vmware workstations与devicecredential不兼容(终极解决方案)
- 在 IntelliJ IDEA 中部署应用到服务器(Eclipse)
- android 自定义特效,Android自定义FloatingText仿点赞+1特效
- ENVI入门系列教程---二、图像分析---13. 遥感动态监测
- Alcor(安国)AU6387量产修复(u盘修复)
- react native 直传 阿里云 OSS云存储
- 【土壤湿度传感器与 Arduino 测量土壤湿度】
- Laravel 学习笔记: 授权策略(Policy)
- 开源项目学习之(一)------zheng环境搭建
- 二手苹果手机价格一览表
- python boxplot 画盒须图
- 不错的在线印章生成器网站
- 2021-05-28 sqlplus命令连接数据库的几种方法
- Web技术实现仿苹果手机计算器
- 夜神模拟器使用termux安装Ubuntu系统