JQuery介绍:

【官网】http://jquery.com

【参考API】http://jquery.cuishifeng.cn/

JQuery的低版本支持IE低版本,JQuery的2版本不太支持IE的低版本,推荐用1版本的最高1.12

- 找元素(直接,间接)

- 操作   (属性..)

JQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。

jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。

jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。

JQuery对象:  jQuery = $

jQuery 对象就是通过jQuery包装DOM对象后产生的对象。

jQuery 对象是 jQuery 独有的. jQuery 对象可以使用 jQuery 里的方法: $(“#test”).html();

比如: $("#test").html()   意思是指:获取ID为test的元素内的html代码。其中html()是jQuery里的方法 

这段代码等同于用DOM实现代码: document.getElementById(" test ").innerHTML; 

注意: 虽然jQuery对象是包装DOM对象后产生的,但是jQuery无法使用DOM对象的任何方法

同理DOM对象也不能使用jQuery里的方法.乱使用会报错

约定:如果获取的是 jQuery 对象, 那么要在变量前面加上$.

var $variable = jQuery 对象

var variable = DOM 对象

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

选择器

基本选择器  $("*")  $("#id")   $(".class")  $("element")  $(".class,p,div")

层级选择器  $(".outer div")  $(".outer>div")   $(".outer+div")  $(".outer~div")

基本筛选器  $("li:first")  $("li:eq(2)")  $("li:even") $("li:gt(1)")

属性选择器  $('[id="div1"]')   $('["alex="sb"][id]')

表单选择器  $("[type='text']")----->$(":text") 注意只适用于input中type属性

$("input :checked")      // 注意input标签和checked属性直接有一个空格

基本选择器 + 层级选择器

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<body>
<div>hello div</div>
<div class="div1">hello div1</div>
<p>hello p</p>
<p id="p1">hello p1</p>
<!-- --------------------------------------------------- -->
<div class="outer">
<div class="inner">
<p>hello p2</p>
</div>
<p>hello p3</p>
</div>
<p>毗邻标签</p>
</body>
</html> <script src="jquery-3.2.1.js"></script>
<script>
//基本选择器
$("div").css("color","red"); // 标签选择器
// $("div").css("color","red").css("background-color","yellow"); //JQuery支持级联样式
$("*").css("background-color","yellow"); // 全局选择器
$("#p1").css("color","blue"); // id选择器
$(".div1").css("color","green") // 类选择器 //组合选择器
$(".outer p").css("color","purple") ; //后代选择器,符合名字的后代都显示该样式
$(".outer>p").css("color","purple") ; //子代选择器,只在子代显示该样式
$(".outer+p").css("color","purple") ; //毗邻选择器,只在紧挨着outer元素的p子代显示该样式
$(".outer~p").css("color","purple") ; //subling选择器,只向下找子代的p标签显示该样式 </script>

基本筛选器 + 属性选择器 + 表单选择器

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<body>
<div class="div1">hello div1
<ul>
<li>1111</li>
<li>2222</li>
<li>3333</li>
<li>4444</li>
</ul>
</div>
<p school="peking">清华大学</p>
<p school="beijing">北京大学</p>
<input type="text">
<input type="button">
</body>
</html> <script src="jquery-3.2.1.js"></script>
<script>
//基本筛选器,采用冒号
$(".div1 li:first").css("color","red"); //取出li的第一个元素
$(".div1 li:eq(1)").css("color","green"); //取出li的第2个元素[索引从0开始]
$(".div1 li:last").css("color","blue"); //取出li的最后一个元素
$(".div1 li:even").css("color","red"); //数组下标的偶数位变红色 //属性选择器,中括号
$("[school]").css("color","orange"); //此时school属性的所有的颜色都变了
$("[school='beijing']").css("color","palegreen"); //给特定的北京大学变浅绿色 // 表单选择器,中括号利用type标识
$("[type='text']").css("height","12px");
//另一种形式来表达,且只能用于input中type属性
$(":button").css("width","55px");
$("input: checked") // 注意空格
</script>

筛选器

过滤筛选器
                    $("li").eq(2)  $("li").first()  $("ul li").hasclass("test")【返回boolean值,有则true】
      查找筛选器
                    $("div").children(".test")    $("div").find(".test") 
                    $(".test").next()    $(".test").nextAll()   $(".test").nextUntil()
                    $("div").prev()  $("div").prevAll()  $("div").prevUntil()
                    $(".test").parent()  $(".test").parents()  $(".test").parentUntil()
                    $("div").siblings()

$("div").children(".test")    $("div").find(".test")

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<body>
<div class="div1">hello div1
<div class="div5">div5</div>
<div class="div15">div15</div>
<div class="div2">hello div2
<div class="div3">hello div3</div>
<div class="div4">hello grandson div4</div>
</div>
<div class="div4">hello uncle div4
<div class="div7">div7</div> <!-- 父子继承,会继承父类颜色 -->
</div>
<div class="div6">div6</div>
<div class="div8">div8</div>
</div>
</body>
</html>
<script src="jquery-3.2.1.js"></script>
<script>
// childer: 只找儿子辈; find:所有后代内查找
// $(".div1").children().css("color","red") // 不添加限定的,查找所有元素,div2, div3, grandson div4变色
// $(".div1").children(".div4").css("color","green") // 添加了限定只找儿子辈的div4变色,uncle div4变色
// $(".div1").find(".div4").css("color","blue"); // 查找div1下所有div4的标签grandson div4, uncle div4变蓝色,
</script>

$(".test").next()    $(".test").nextAll()   $(".test").nextUntil()  +  $("div").prev()  $("div").prevAll()  $("div").prevUntil()

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<body>
<div class="div1">hello div1
<div class="div5">div5</div>
<div class="div15">div15</div>
<div class="div2">hello div2
<div class="div3">hello div3</div>
<div class="div4">hello grandson div4</div>
</div>
<div class="div4">hello uncle div4
<div class="div7">div7</div> <!-- 父子继承,会继承父类颜色 -->
</div>
<div class="div6">div6</div>
<div class="div8">div8</div>
</div>
</body>
</html>
<script src="jquery-3.2.1.js"></script>
<script>
// $(".div2").next().css("color","palegreen"); // 找到了div2下一个div4以及子类div7
// $(".div2").nextAll().css("color","red"); // 找到了div2下面所有类div4以及子类div7,div6
// $(".div2").nextUntil(".div6").css("color","red"); // 从div2找到div6之前的元素,div4以及子类div7
// $(".div2").prev().css("color","green") // 找到div2上面一个元素,div5
// $(".div2").prevAll().css("color","red") // 找到div2上所有元素,div5,div15
// $(".div2").prevUntil(".div5").css("color","yellow") // 从找到div2向上找到div5之前的所有元素,div15
</script>

$(".test").parent()  $(".test").parents()  $(".test").parentUntil()  +  $("div").siblings()

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<body>
<div class="div1">hello div1
<div class="div5">div5</div>
<div class="div15">div15</div>
<div class="div2">hello div2
<div class="div3">hello div3</div>
<div class="div4">hello grandson div4</div>
</div>
<div class="div4">hello uncle div4
<div class="div7">div7</div> <!-- 父子继承,会继承父类颜色 -->
</div>
<div class="div6">div6</div>
<div class="div8">div8</div>
</div>
</body>
</html>
<script src="jquery-3.2.1.js"></script>
<script>
// $(".div2").parent().css("color","red"); // 找到div1的父类后,又因为子类继承了父类,所以颜色全部变红
// $(".div2").parents().css("color","yellow") //这里的parsents是一个集合,一直向上找,找到body,子类继承父类
// $(".div2").parentsUntil("body").css("color","blue") // 一直向上找到body之前的元素
$(".div2").siblings().css("color","red"); // 向上和向下找兄弟类,div5,div15,hello uncle div4,div7,div6,div8变色
</script>

实例演示:

【更多参考】http://www.cnblogs.com/yuanchenqi/articles/5663118.html

JQuery学习---JQuery基础知识的更多相关文章

  1. jQuery学习笔记 - 基础知识扫盲入门篇

    jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...

  2. Ant学习-001-ant 基础知识及windows环境配置

    一.Ant 概要基础知识 Apache Ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git.T ...

  3. 学习javascript基础知识系列第二节 - this用法

    通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...

  4. 学习javascript基础知识系列第三节 - ()()用法

    总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...

  5. 关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL))

    关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL)) 欢迎fork本项目原始链接:关于图计算&图学习的基础知识概览:前置知识点学习 ...

  6. JQuery学习笔记——基础选择器

    第一篇博客,现在原生安卓需求不大了.招聘的Android工程师都需要附带更多的其他技术.这也是开启我学习前端之路的开端.前端时间看了HTML.CSS等,在界面渲染这一块,就不多记录博客了.现在学习着J ...

  7. jQuery框架-1.基础知识

    jQuery简介 jQuery,顾名思义是JavaScript和查询(Query),jQuery是免费.开源的.它可以简化查询DOM对象.处理事件.制作动画.处理Ajax交互过程且兼容多浏览器的jav ...

  8. 学习Python3基础知识过程中总结

    print()中end==""的用法 例子:用Python3输出九九乘法表: for i in range(1,10): for j in range(1,i+1): s=i*j ...

  9. three.js学习笔记--基础知识

    基础知识 从去年开始就在计划中的three.js终于开始了 历史介绍 (摘自ijunfan1994的转载,感谢作者) OpenGL大概许多人都有所耳闻,它是最常用的跨平台图形库. WebGL是基于Op ...

随机推荐

  1. c++ 沉思录---代理类

    一.问题 如何设计一容器能包含彼此不同而又相互关联的类的对象(处于完整的继承层次的类)?因为一般的数组容器都只能包含一种类型的对象. 假设有一个表示不同类型的交通工具的类的派生层次: class Ve ...

  2. spring 线程异步执行

    多线程并发处理起来通常比较麻烦,如果你使用spring容器来管理业务bean,事情就好办了多了.spring封装了Java的多线程的实现,你只需要关注于并发事物的流程以及一些并发负载量等特性,具体来说 ...

  3. Mysql日期类型大小比较---拉取给定时间段的记录

    我们知道,mysql里边,日期类型有很多表现形式,date, datetime,timestamp等类型.考虑这样一种场景: 按时间段拉取给定时间段的内容,这时,我们就得使用日期类型的比较了. 表结构 ...

  4. Linux笔记-Linux下编辑器的简介

    在整个linux中,我们使用最多的编译器真的vim了,全名我也不说了,没有多大意义,我们就是通过它来写我们的代码的.如果你有强迫症的话,那么选择使用gedit我也是没话说的啦! 话说其实我也在使用一些 ...

  5. C/C++编码规范

    C/C++编码规范 今天人们越来越明白软件设计更多地是一种工程,而不是一种个人艺术.由于大型产品的开发通常由很多的人协同作战,如果不统一编程规范,最终合到一起的程序,其可读性将较差,这不仅给代码的理解 ...

  6. [PY3]——Python的函数

    Python函数总结图 1.调用 1.1 如何调用 1.1.1  函数名(传参) # 函数使用函数名来调用,函数名后紧跟一对小括号,小括号里传入函数定义时要求的参数 add(9,9) #9+9=18 ...

  7. Angular2 不明真相第一个Demo例子

    如果不是去年换工作接触到AngularJS,估计是不会花时间去学习这个框架的,毕竟是前端的框架,不是自己熟悉的领域.但是为了混得下去,去年就学习了AngularJS的一些用法,当时还整理了一些积累 & ...

  8. EF那点事

    EntityFramework 1-->什么是EnitityFramework   1.1--> ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出 ...

  9. 帧布局--FrameLayout

    <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android=" ...

  10. n后问题

    Description 在n×n格的棋盘上放置彼此不受攻击的n个皇后.按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子.n后问题等价于在n×n格的棋盘上放置n个皇后,任何2个皇 ...