jQuery——jQuery学习笔记(完整版)_jquery笔记-程序员宅基地

技术标签: 学习  面试  jQuery  前端  jquery  

文章目录

  • 前言
  • 一、关于jQuery
  • 二、初步使用
  • 三、 jQuery选择器
  • 四、JQUERY动画
  • 五 、JQUERY属性操作
  • 六、JQUERY位置操作
  • 总结

一、关于jQuery

  什么是jQuery ?

  • jQuery 是一个高效、精简并且功能丰富的 JavaScript 工具库。它提供的 API 易于使用且兼容众多浏览器,这让诸如 HTML 文档遍历和操作、事件处理、动画和 Ajax 操作更加简单。
  • 开始使用 jQuery 可能很容易,也可能具有挑战性,这取决于您对 JavaScript、HTML、CSS 和一般编程概念的经验。 
  • 要知道的一件重要事情是 jQuery 只是一个 JavaScript 库 。 jQuery 的所有功能都是通过 JavaScript 访问的,因此对 JavaScript 有深入的了解对于理解、构建和调试代码至关重要。 虽然定期使用 jQuery 可以随着时间的推移提高您对 JavaScript 的熟练程度,但如果不了解 JavaScript 的内置结构和语法,就很难开始编写 jQuery。

  jQuery的特点  

1. 轻量级。核心文件才几十kb,不会影响页面加载速度。

2. 跨浏览器兼容,基本兼容了现在主流的浏览器。

3. 链式编程、隐式迭代

4. 对事件、样式、动画支持,大大简化了DOM操作。

5. 支持插件扩展开发。有着丰富的第三方的插件,例如:树形菜单、日期控件、轮播图等。

6. 免费、开源。

  下载  

jQuery的官网地址: https://jquery.com/,官网即可下载最新版本。

各个版本的下载:jQuery CDN

二、初步使用

1. 引入

<script type="text/javascript" src='js/jquery-3.6.0.min.js'></script>

2. 准备工作

相当于JS中的 window.onload(function( ){ })

  方式一  

$(document).ready(function(){

                alert("页面加载完成");

})

  方式二  

$(function () {  

   alert("页面加载完成");

}) ;

三、 jQuery选择器

  第一节:基础选择器  

语法:$("选择器")  里面写css选择器如:

1:基础选择器

$("#demo")    :获取id

$(“.demo”)     : 获取类选择器

$(“div”)        : 获取标签选择器

$(“div,p,span”)   :获取多个元素(并集选择器)

$(“div.demo”)    :获取交集选择器

$(“div>li”)       : 获取子代选择器

$(“div li”)       : 获取后代元素选择器

2:筛选选择器

$("div:first")               获取第一个 div元素

$("div:last")                获取最后一个div元素 

$("div:eq(2)")            获取div元素中,索引为2的元素 ,从0开始

$(div:odd)                获取到div元素中,索引为奇数的元素

$(div:even)                获取到div元素中,索引为偶数的元素

代码举例:

<ul>

                                   <li>1</li><li>2</li><li>3</li><li>4</li><li>5</li>

</ul>

<script>

                        $(function(){

                                var v   = $("li:eq(1)").text();

                                var odd = $("li:odd");

                                console.log(v);

                                console.log(odd)

                        })

</script>

  第二节:更改样式  

2.1 语法格式

$('div').css('属性', '值')   

举例:$("div").css("color","red");

注意:它会让页面所有div标签都变为红色,称之为隐式迭代,不需要我们在遍历。

2.2 链式编程 

$(".red1").siblings().css("color","red")

当期元素的兄弟元素变为红色,自己不变色。

$(".red1").css("color","blue") .siblings().css("color","red")

当期元素的兄弟元素变为红色,自己变蓝色。

2.3 对象形式

$(".red1").css({ color:"red",'font-size':"20px"});

属性可以不加‘’,但-需要注意。

2.4 类的方式

$("div").addClass("current"); //添加类

$("div").removeClass("current");//删除类

$("div").toggleClass("current");//切换类

  第三节:tab栏切换  

示例代码:

<div class="tab">

                                <div class="nav" >

                                        <a href="javascript:;" class="hover">公司新闻</a>

                                        <a href="javascript:;">公司动态</a>

                                        <a href="javascript:;">行业新闻</a>

                                </div>

                               

                                <div class="nav_con">

                                        <div>公司新闻-show</div>

                                        <div>公司动态-show</div>

                                        <div>行业新闻-show</div>

                                </div>

                </div>

                <script src="js/jquery-3.6.0.min.js"></script>

               

                <script type="text/javascript">

                  $(function(){

                          $(".tab .nav a").click(function(){

                                 $(this).addClass("hover").siblings().removeClass("hover");

                                  var index = $(this).index();

                                  $(this).parent().siblings().find("div").eq(index).show().siblings().hide();

                          })

                  })

                </script>

四、JQUERY动画

  第一节:显示隐藏  

show() / hide() / toggle() ;

举例:

show(speed,easing,fn)

Speed:速度,slow,normal fast 或者毫秒

$("#demo").click(function(){

         $(this).hide(2000)

})

  第二节:滑入滑出  

滑入滑出动画,常见有三个方法:slideDown() / slideUp() / slideToggle() ;

<button>下拉滑动</button>

            <button>上拉滑动</button>

            <button>切换滑动</button>

            <div></div>

            <script>

                $(function() {

                    $("button").eq(0).click(function() {

                        // 下滑动 slideDown()

                        $("div").slideDown(500);

                    })

                    $("button").eq(1).click(function() {

                        // 上滑动 slideUp()

                        $("div").slideUp(500);

                    })

                    $("button").eq(2).click(function() {

                        // 滑动切换 slideToggle()

                        $("div").slideToggle(500);

                    });

                });

            </script>

  第三节:淡入淡出  

淡入淡出动画,常见有四个方法:fadeIn() / fadeOut() / fadeToggle() / fadeTo() ;

      <button>淡入效果</button>

            <button>淡出效果</button>

            <button>淡入淡出切换</button>

            <button>修改透明度</button>

            <div></div>

            <script>

                $(function() {

                    $("button").eq(0).click(function() {

                        // 淡入 fadeIn()

                        $("div").fadeIn(1000);

                    })

                    $("button").eq(1).click(function() {

                        // 淡出 fadeOut()

                        $("div").fadeOut(1000);

                    })

                    $("button").eq(2).click(function() {

                        // 淡入淡出切换 fadeToggle()

                        $("div").fadeToggle(1000);

                    });

                    $("button").eq(3).click(function() {

                        //  修改透明度 fadeTo() 这个速度和透明度要必须写

                        $("div").fadeTo(1000, 0.5);

                    });

                });

            </script>

五 、JQUERY属性操作

   第一节:元素固有属性prop()  

所谓元素固有属性就是元素本身自带的属性,比如 <a> 元素里面的 href ,比如 <input> 元素里面的 type。

<input  type="button" name="hello" value="查看信息" id="btn"/>

<script type="text/javascript">

                        $("#btn").click(function(){

                                console.log($(this).prop("name"));

                        })

</script>

  第二节: 元素自定义属性值 attr()  

用户自己给元素添加的属性,我们称为自定义属性。 比如给 div 添加 index =“1”。

$("#btn").click(function(){

                                console.log($(this).attr("index"));

})

  第三节: 数据缓存 data()  

data() 方法可以在指定的元素上存取数据,并不会修改 DOM 元素结构。一旦页面刷新,之前存放的数据都将被移除。

六、JQUERY位置操作

  第一节:尺寸操作  

   <div></div>

    <script>

        $(function() {

            // 1. width() / height() 获取设置元素 width和height大小

            console.log($("div").width());

            // $("div").width(300);

            // 2. innerWidth() / innerHeight()  获取设置元素 width和height + padding 大小

            console.log($("div").innerWidth());

            // 3. outerWidth()  / outerHeight()  获取设置元素 width和height + padding + border 大小

            console.log($("div").outerWidth());

            // 4. outerWidth(true) / outerHeight(true) 获取设置 width和height + padding + border + margin

            console.log($("div").outerWidth(true));

        })

</script>

  第二节:位置操作  

jQuery的位置操作主要有三个: offset()、position()、scrollTop()/scrollLeft() , 具体介绍如下:

offset() 定义和用法

方法设置或返回被选元素相对于文档的偏移坐标。

返回偏移坐标:

$(selector).offset()

设置偏移坐标:

$(selector).offset({top:value,left:value})

使用函数设置偏移坐标:

$(selector).offset(function(index,currentoffset))

Position() 方法使用

jQuery position() 方法 | 菜鸟教程

scrollTop()方法使用

jQuery scrollTop() 方法 | 菜鸟教程

  第三节:动画练习  

$(function(){

                   var boxtop = $(".main").offset().top;

                 

                   $(window).scroll(function(){

                      var scrolltop = $(document).scrollTop();

                      console.log(scrolltop);

                      if(scrolltop>=boxtop){

                          $(".backtop").fadeIn();//显示

                      }else{

                         $(".backtop").fadeOut(); //淡出

                      }

                      

                   })



              $("#backtop").click(function(){

                  

                   $("body,html").stop().animate({

                       scrollTop:0

                   },3000,'linear',function(){

                      alert("执行结束");

                   })

                  

               })

              

            })

总结

就此停笔,希望对你有所帮助吧,最后依旧诚挚祝福看到文章的你有个好心情~

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Bonsoir777/article/details/126889237

智能推荐

vue 基础 作用域插槽的使用_vue 插槽中内容数量-程序员宅基地

文章浏览阅读192次。vue 作用域插槽的使用 <div id="app"> <cpn></cpn> <cpn> <!-- 2.获取子组件中的 pLanguage --> <template slot-scope="slot"> <!-- <span v-for="item in slot.data"_vue 插槽中内容数量

go导入mysql库出现错误_dial tcp 142.251.42.241:443: connectex: a connecti-程序员宅基地

文章浏览阅读399次。go get: module github.com/go-sql-driver/mysql: Get "https://proxy.golang.org/github.com/go-sql-driver/mysql/@v/list": dial tcp 142.251.42.241:443: connectex: A connection attempt failed because the connected party did not properly respond after a period o_dial tcp 142.251.42.241:443: connectex: a connection attempt failed because

Laya的粒子效果-程序员宅基地

文章浏览阅读1.6k次,点赞2次,收藏3次。参考:UI页面、粒子、动画、脚本新建面板详解Laya版本:2.5.0一创建一个粒子效果在UI编辑界面右键-> 新建 -> 粒子粒子有重力模式和半径模式重力模式:粒子是一个角度向另一个方向呈发射式的粒子效果半径模式:围绕中心点为半径的旋转式粒子效果两个模式除了初始参数不同,没有什么区别。你可以创建一个重力模式粒子,然后通过调整参数,实现半径模..._laya 粒子效果

flutter 加密安全-程序员宅基地

文章浏览阅读1.4k次,点赞20次,收藏18次。数据的加密解密操作在 日常网络交互中经常会用到,现在密码的安全主要在于 秘钥的安全,如论 DES 3DES AES 还是 RSA, 秘钥的算法(计算秘钥不固定) 和 保存,都决定了你的数据安全;但是常见的逆向操作 比如 hook 加密算法 都很容易拿到 秘钥; 这个时候我们可以 回溯到 之前的 古典密码学(依赖算法本身),基本思路 置换 移位 编码 等等手段 来配合 加密算法一起使用,提高我们应用的安全;

Verilog测试:TestBench结构_verilog testbench-程序员宅基地

文章浏览阅读6.1w次,点赞147次,收藏1k次。目录1. 完整的TESTBENCH文件结构2.时钟激励产生3.复位信号设计4.双向信号设计5. 特殊信号设计6.仿真控制语句以及系统任务描述7.加法器的仿真测试文件编写  Verilog功能模块HDL设计完成后,并不代表设计工作的结束,还需要对设计进行进一步的仿真验证。掌握验证的方法,即如何调试自己的程序非常重要。在RTL逻辑设计中,要学会根据硬件逻辑来写测试程..._verilog testbench

【Java面试题】这道分布式面试题一定要拿下,说说你对CAP的理解?看看高手如何回答_mic老师50万字面试宝典-程序员宅基地

文章浏览阅读284次。分布式架构之所以复杂,就是因为增加了网络通信,而网络通信本身具有不确定性。但是作为业务支撑的整个技术架构,所有业务的处理必须要具备确定性。因此在这样一个矛盾下,导致架构变得更加复杂。面试题”说说你对CAP的理解“这个问题,就是在这个背景下产生的大家好,我是Mic,一个工作了14年的Java程序员。下面我们来分析一下面试官对于这个问题的考察意图。_mic老师50万字面试宝典

随便推点

Qt for Android10 自动更新app,安装apk包_qt android 更新app安装-程序员宅基地

文章浏览阅读2.3k次,点赞5次,收藏9次。qml qt for android 安装apk app自动更新_qt android 更新app安装

html iis配置默认文档,IIS设置默认内容文档-程序员宅基地

文章浏览阅读3.9k次。浏览网站实际上是浏览网站中的网页文件。为了便于用户访问,每个站点一般都有自己的默认文档。一般情况下,默认文档都被设置为该网站的主页或某个索引页。默认文档的作用是简便用户的输入,使用户不必在浏览器中输入网站主页的文件名才能访问该网站。例如,网站www.Gench.com.cn将默认主页设置为index.htm,那么,用户在浏览器中输入www.Gench.com.cn时,IIS会自动将页面转换到默认文..._iis中【启用默认内容文档】选项中将默认打开文档修改为程序首页文件格式,如:index

箱线图_箱线图的主要用途是什么-程序员宅基地

文章浏览阅读5.2w次,点赞86次,收藏373次。以前对箱线图一直一知半解,这次在网上找到一篇不错的文章。首先,箱形图更多用于多组数据的比较,相对直方图不仅节省了空间,还可以展示出许多直方图不能展示的信息。单组数据则更适合采用直方图,使可视化效果更加直观。文章来源于“镝次元”公众号,在此向作者表示感谢。不会数学统计没关系——5分钟教你轻松掌握箱线图 | 图表家族#242018-01-22 19:00编辑:王艺 版面:胡曼君..._箱线图的主要用途是什么

鸿蒙系统ArkTs语法入门_鸿蒙arkts语法学-程序员宅基地

文章浏览阅读1.2k次,点赞22次,收藏15次。每个语言都有控制流语句就不写测试代码了。arkTs绝大部分语法继承自ts,然后有些许的语法特性变化,这部分我也会在入门的时候一并记上。我之前学过java,所以这不是零基础,至少需要会一种编程语言。新建一个鸿蒙App项目,然后开一个设置按钮进行测试没有条件的话,可以在线测试编程代码。在TypeScript中所有的类型都可以被赋值为空类型null,赋值为空类型时可以和其他同类型对象进行运算,但是无法调用这个对象内部本身的方法,会报空指针异常。_鸿蒙arkts语法学

MS SQL Server2008大数、小数转varchar_dable怎么转成varchar-程序员宅基地

文章浏览阅读443次。试了下str, cast和convert,发现对于小数或大数,多少都存在一些问题,最后经过尝试终于找到一种满意的答案:select cast(HTJE as decimal(20,2)) from T_HTGL where ID = 1002993对于金额部分,这里设置了小数最多2位,能满足需求,尾部的0会自动去除,搞定!..._dable怎么转成varchar

解决el-radio-group只触发一次的问题-程序员宅基地

文章浏览阅读569次,点赞7次,收藏6次。把原来绑在el-radio-group的事件取消调 再el-radio-button俩个上面都绑定@click.native.prevent="changeMerge(1)"一个传1 一个传2 这样就触发了。原来想的是用el-button来写,试过el-button点多少次都会触发二次确认框 但是你需求更改其样式,还要把其样式修改为el-radio-button的样式 工程量比较大 所以没深研究。1.需求是点击合并后,出来二次确认框。现在的问题是点击完出现二次确认框后,再次点击不出来二次确认框了。_el-radio-group

推荐文章

热门文章

相关标签