博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Day49 前端基础--jQuery
阅读量:6470 次
发布时间:2019-06-23

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

一,jQuery初识

  1.jQuery介绍

    1.jQuery是一个轻量级的,兼容多浏览器的JavaScript库

    2.jQuery使用户能够更方便地处理HTML Document、Events、实现动画效果、方便地进行Ajax交互,能极大地简化JavaScript编程。它的宗旨就是:"Write less, do more."

  2.jQuery的优势

1.一款轻量级的JS框架。jQuery核心js文件才几十kb,不会影响页面加载速度。2.丰富的DOM选择器,jQuery的选择器用起来很方便,比如要找到某个DOM对象的相邻元素,JS可能要写好几行代码,而jQuery一行代码就搞定了,再比如要将一个表格的隔行变色,jQuery也是一行代码搞定。3.链式表达式。jQuery的链式操作可以把多个操作写在一行代码里,更加简洁。4.事件、样式、动画支持。jQuery还简化了js操作css的代码,并且代码的可读性也比js要强。5.Ajax操作支持。jQuery简化了AJAX操作,后端只需返回一个JSON格式的字符串就能完成与前端的通信。6.跨浏览器兼容。jQuery基本兼容了现在主流的浏览器,不用再为浏览器的兼容问题而伤透脑筋。7.插件扩展开发。jQuery有着丰富的第三方的插件,例如:树形菜单、日期控件、图片切换插件、弹出窗口等等基本前端页面上的组件都有对应插件,并且用jQuery插件做出来的效果很炫,并且可以根据自己需要去改写和封装插件,简单实用。

  3.jQuery使用

    1.下载jQuery

      http://jquery.com/download/

    2.导入

      1.script导入本地的文件

      2.使用CDN

    3.按照jQuery的语法使用就可以

      注意:先导入再使用

    4.jQuery对象

jQuery对象就是通过jQuery包装DOM对象后产生的对象。jQuery对象是 jQuery独有的。如果一个对象是 jQuery对象,那么它就可以使用jQuery里的方法:例如$(“#i1”).html()。$("#i1").html()的意思是:获取id值为 i1的元素的html代码。其中 html()是jQuery里的方法。相当于: document.getElementById("i1").innerHTML;虽然 jQuery对象是包装 DOM对象后产生的,但是 jQuery对象无法使用 DOM对象的任何方法,同理 DOM对象也没不能使用 jQuery里的方法。一个约定,我们在声明一个jQuery对象变量的时候在变量名前面加上$:    var $variable = jQuery对像    var variable = DOM对象    $variable[0]//jQuery对象转成DOM对象拿上面那个例子举例,jQuery对象和DOM对象的使用:    $("#i1").html();//jQuery对象可以使用jQuery的方法    $("#i1"l)[0].innerHTML;// DOM对象使用DOM的方法

 

二,jQuery基础语法

  1.查找标签(非常非常多)

    1.基本选择器(同CSS选择器)

//id选择器$("#id")//标签选择器$("tagName")//class选择器$(".className")//配合使用$("div.c1") //找到有c1 class类的div标签//所有元素选择器:$("*")//组合选择器$("#id, .className, tagName")

 

    2.层级选择器(同CSS选择器)

//x和y可以为任意选择器$("x y");  //x的所有后代y (子子孙孙)$("x > y");  //x的所有儿子y (儿子)$("x + y");  //找到所有紧挨在x后面的y$("x ~ y");  //x之后所有的兄弟y

 

    3.属性选择器

[attribute][attribute=value]// 属性等于[attribute!=value]// 属性不等于//实例$("input[type='checkbox']");  // 取到checkbox类型的input标签$("input[type!='text']");  // 取到类型不是text的input标签

 

    4.表单筛选器

:text:password:file:radio:checkbox:submit:reset:button//例$(":checkbox")  // 找到所有的checkbox//表单对象属性::enabled:disabled:checked:selected//例:找到可用的input标签
$("input:enabled") // 找到可用的input标签//例:找到被选择中的option$(":selected") // 找到所有被选中的option

    

    5.基本筛选器

:first // 第一个:last // 最后一个:eq(index)// 索引等于index的那个元素:even // 匹配所有索引值为偶数的元素,从 0 开始计数:odd // 匹配所有索引值为奇数的元素,从 0 开始计数:gt(index)// 匹配所有大于给定索引值的元素:lt(index)// 匹配所有小于给定索引值的元素:not(元素选择器)// 移除所有满足not条件的标签:has(元素选择器)// 选取所有包含一个或多个标签在其内的标签(指的是从后代元素找)//例$("div:has(h1)")// 找到所有后代中有h1标签的div标签$("div:has(.c1)")// 找到所有后代中有c1样式类的div标签$("li:not(.c1)")// 找到所有不包含c1样式类的li标签$("li:not(:has(a))")// 找到所有后代中不含a标签的li标签
//例:自定义模态框,使用jQuery实现弹出和隐藏功能  
自定义模态框

 

    6.筛选器方法

      1.往下找

        1.next()

        2.nextAll()

        3.nextUntil()

$("#id").next()$("#id").nextAll()$("#id").nextUntil("#i2")

 

      2.往上找

        1.prev()

        2.prevAll()

        3.prevUntil()

$("#id").prev()$("#id").prevAll()$("#id").prevUntil("#i2")

 

      3.找父标签parent()

        1.parent()

        2.parents()

        3.parentsUntil()

$("#id").parent()$("#id").parents()  // 查找当前元素的所有的父辈元素$("#id").parentsUntil() // 查找当前元素的所有的父辈元素,直到遇到匹配的那个元素为止。

      

      4.儿子和兄弟元素:

$("#id").children();// 儿子们$("#id").siblings();// 兄弟们

 

      5.find()

//查找:搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。$("div").find("p")  //等价于$("div p")

 

      6.filter()

//筛选:筛选出与指定表达式匹配的元素集合。这个方法用于缩小匹配的范围。用逗号分隔多个表达式$("div").filter(".c1")  等价于 $("div.c1")  // 从结果集中过滤出有c1样式类的

      补充方法:

.first() // 获取匹配的第一个元素.last() // 获取匹配的最后一个元素.not() // 从匹配元素的集合中删除与指定表达式匹配的元素.has() // 保留包含特定后代的元素,去掉那些不含有指定后代的元素。.eq() // 索引值等于指定值的元素
//例:左侧菜单  
左侧菜单示例

 

  2.操作标签

    1.操作标签的样式

      1.操作Class

//样式操作addClass();// 添加指定的CSS类名。removeClass();// 移除指定的CSS类名。hasClass();// 判断样式存不存在toggleClass();// 切换CSS类名,如果有就移除,如果没有就添加。

 

      2.直接操作style

//CSScss("color","red")//DOM操作:tag.style.color="red"//示例:$("p").css("color", "red"); //将所有p标签的字体设置为红色

 

  3.事件

  4.jQuery内置简单的动画

 

转载于:https://www.cnblogs.com/lianyeah/p/9806606.html

你可能感兴趣的文章
Android中的SurfaceView详解
查看>>
Flutter之MaterialApp使用详解
查看>>
DataBinding最全使用说明
查看>>
原生Js交互之DSBridge
查看>>
Matlab编程之——卷积神经网络CNN代码解析
查看>>
白洋淀周末游
查看>>
三篇文章了解 TiDB 技术内幕 —— 说计算
查看>>
在Mac下使用Python3
查看>>
copy strong weak assign的区别
查看>>
OpenCV 入门
查看>>
css 3D transform变换
查看>>
ele表格合并行之后的selection选中
查看>>
正则表达式分解剖析(一文悟透正则表达式)
查看>>
解决UILable标点符号居中的问题
查看>>
HTML5新特性教程
查看>>
SpringBoot 实战 (十七) | 整合 WebSocket 实现聊天室
查看>>
ImageOptim-无损图片压缩Mac版
查看>>
12 Go语言map底层浅析
查看>>
vue-resumer 项目中 element-ui 遇到的 textarea autosize 问题
查看>>
以主干开发作为持续交付的基础
查看>>