Jquery

一、概念

        JQuery是一套兼容多浏览器的JS脚本库,核心理念是写的更少,做的更多,使用Jquery将极大的提高编写JS代码的效率。

        下载与安装:下载:只需要在官网下载js文件,也可以用在线的。

                              安装:在需要的页面引用即可。

<script src="js/jQuery.js" type="text/javascript"></script>

二、DOM对象与Jquery包装集对象

        DOM对象只有DOM接口提供的方法和属性,通过js代码获取的对象都是DOM对象;通过jQuery获取的对象是jQuery包装集对象,简称jQuery对象,只有jQuery对象才能使用jQuery提供的方法。

1、DOM对象

        js中获取DOM对象,dom对象只有有限的属性和方法。

    var table=document.getElementById("tb");var div=document.getElementsByTagName("div")

2、jQuery包装集对象

        是DOM对象的扩充,在jQuery的世界中将所有的对象,无论是一个还是一组,都封装成一个jQuery包装集。

    var jq=$("#divid")

3、DOM对象转Jquery包装集对象

        Dom对象转jQuery对象,只需要利用$()方法进行包装即可

    var div=document.getElementsByTagName("div")var jqdiv=$(div)

4、jQuery对象转Dom对象

        1、获取包装集指定下标元素;2、利用遍历获取

    var jq=$("#divid")//下标方式var domjq=jq[0]

三、jQuery选择器

        与js操作dom对象一样,获取文档中的节点对象是很频繁的一个操作,在jQuery提供了简便的方式供我们查找定位元素。

        jQuery选择器按照功能主要分为选择和过滤。并且配合使用。

1、基础选择器

<body><div id="div1">一</div><div id="div1" class="aa">二</div><div class="aa">三</div>
</body>
<script src="js/jQuery.js" type="text/javascript"></script>
<script >let {log}=console//id选择器。重名的只会返回第一个var idjq=$("#div1")log(idjq) //元素名选择器。返回三个var yuansujq=$("div")log(yuansujq)//class选择器。返回后两个var classjq=$(".aa")log(classjq)//组合选择器。返回后两个var zuhejq=$("#id,.aa")log(zuhejq)</script>

2、层次选择器

<body><div id="parent"><div id="div1"><p class="abc">p1</p><h1>h1</h1><p>p2</p></div><div ><p>p3</p><div ><p>p4</p>lasklfhjfshkf</div></div></div></body>
<script src="js/jQuery.js" type="text/javascript"></script>
<script >let {log}=console//后代选择器。找到div下面的所有div.3个var houdai=$("#parent div");log(houdai)//子代选择器。找到div下面的第一层div。2个var zidai=$("#parent > div");log(zidai)//相邻选择器。找到挨着的下一个同级相同的元素。//找到下一个divvar xaingling1=$("#div1 + div");log(xaingling1)//找不到。下一个是h1标签。就没有挨着的相同元素var xaingling1=$(".abc + p");log(xaingling1)//同辈选择器。找到p2var tongbei=$(".abc ~ p")log(tongbei)</script>

3、表单选择器

//表单选择器,选择表单中所有input、textArea、button
var inputs=$(":input");
//元素选择器,选择所有input
var inputa=$("input")

四、Jquery Dom 操作

        常用的几个方面操作。查找元素;创建节点对象;访问和设置节点对象的值和属性;添加节点;删除节点;删除、添加、修改、设定节点的CSS样式等。

        属性分类:固有属性:元素本身就有的属性;

                          返回值为Boolean的属性:checked、selected、disabled

                          自定义属性:用户自定义的属性。
 

1、操作元素的属性 

        如果属性是Boolean类型的一般使用prop,其他的使用attr

a、获取元素的属性      

        区别:1、固有属性:attr()和prop()方法均可获取
                   2、自定义属性:attr()可获取,prop()不可获取
                   3、返回值为Boolean的:设置了属性:attr返回具体值,prop返回true
                                                            未设置属性:attr返回undefined,prop返回false

        b、设置属性

                attr("属性名",属性值)
                prop("属性名",属性值)

        区别:1、固有属性:attr()和prop()方法均可操作
                   2、自定义属性:attr()可操作,prop()不可操作
                   3、返回值为Boolean的:设置了属性:attr返回具体值,prop返回true
                                                            未设置属性:attr返回undefined,prop返回false

         

       

        c、移除属性

                removeAttr("属性名")

                

2、操作元素的样式

        对于元素的样式,也是一种属性,由于样式用得特别多,所以对于样式除了当作属性处理还有专门的方法进行处理。       

         注意:addClass:添加样式遇到相同的样式以后设置的为准
                     css:设置方式:css("具体样式名":"样式值")
                                                css({"具体样式名":"样式值","具体样式名":"样式值"})

3、操作元素的内容

        对于元素还可以操作其中的内容,例如文本、值。

        注意:html():获取到的内容包含标签,对象是非表单标签

                   text():获取内容是纯文本,不包含、识别标签,对象是非表单元素

                   val():获取元素的值,表单元素。

                表单元素:text、password、radio、select等

                非表单元素:div、span等

              

4、添加元素

         注意:在添加元素时,如果元素本身不存在(新建元素)此时会将元素追加到指定位置。

                     如果元素本身存在,会将元素直接剪切到指定位置。

5、删除元素

        注意:remove():删除所有内容,包括标签和内容。用法:目标对象.remove()

                   empty():删除内容,保留标签。用法:目标对象.empty()

6、遍历元素

        each();

        $(select).eache(function(index,item)):遍历元素

        参数function:为遍历时的回调函数

                idex:为遍历元素的序号,从0开始。

                item:当前元素。

五、事件

1、ready加载事件

        预加载事件。当前页面的dom结构加载完毕后执行,类似于与JS中的load

        写法:$(document).ready(function(){});

                   $(function(){});

2、bind绑定事件

        为被选元素添加一个或多个事件处理程序,并规定事件发生时运行的函数。       

$(selecttor).bind( eventType [ , eventData], handler(eventObject) );

        eventType:是一个字符串类型的事件类型,就是你所需要绑定的事件。

                类型包括:blur,focus,focusin,load,resize,scroll,unload,click...

        [,eventData]:传递的参数,格式:{名:值,名:值}

        handler(eventObject):该事件触发执行的函数。

        绑定单个事件:

                bind绑定:$("元素").bind("事件类型",function(){});

                直接绑定:$("元素").事件名(function(){});      

//绑定单个事件
$("teset").bind("click",function(){console.log("666")
})//直接绑定
$("teset").click(function(){console.log("666")
})

        绑定多个事件:               

                bind绑定

                        1、同时为多个事件绑定同一个函数
                                指定元素.bind("事件类型1 事件类型2 .。。",function(){})

                        2、为元素绑定多个事件,并设置对应的函数
                                指定元素.bind(“事件类型”,function(){}).bind("事件类型",function(){})

                        3、为元素绑定多个事件,并设置对应的函数
                                指定元素.bind({   "事件类型":function(){}  ,   "事件类型":function(){}  })

                直接绑定

                        指定元素.事件名(function(){}).事件名(function(){})                                      

//为多个事件绑定同一个函数
$("button1").bind("click mouseout",function(){console.log("按钮1")
})//为元素绑定多个事件
$("button2").bind("click",function(){console.log("按钮点击了")
}).bind("mouseout",function(){console.log("按钮移开了")
})//为元素绑定多个事件
$("button3").bind({"click":function(){console.log("按钮点击了")}"mouseout":function(){console.log("按钮移开了")}
})//直接绑定
$("button4").click(function(){console.log("按钮点击了")}).mouseout(function(){console.log("按钮移开了")})

        

六、Ajax

1、$.ajax

        无刷新、异步

        jquery调用Ajax方法:

                格式:$.ajax({});

                参数:type:请求方式get/post

                           url:请求地址

                           async:是否异步,默认是true

                           data:发送到服务器的数据

                           dataType:预期服务器返回的数据类型

                           contentType:设置请求头

                           success:请求成功时调用此函数

                            error:请求失败时调用此函数

$.ajax({type:"get",           url:"/system/login",data:{username:"11",password:"123"},dataType:"json",success:function(){console.log("调用成功")}
})

        

2、$get、$post

        $get():$get("请求地址","请求参数",function(形参){ })

         $post():$post("请求地址","请求参数",function(形参){ })

$get("/system/login",{},function(data){console.log(data)
})$post("/system/login",{},function(data){console.log(data)
})

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/21042.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

echarts折线图横向渐变填充

这种情况&#xff0c;需要后端去计算&#xff0c;如何把不同分段的值赋予不同的颜色&#xff0c;然后组合成下面我们需要的格式就可以实现 drawLine1() {if (document.getElementById(s1) ! null) {var that thislet heightNum (this.porosityList.maxDepth-this.porosityLis…

基于javascript的可以自定义设置圆几等份的抽奖示例

基于javascript的可以自定义设置圆几等份的抽奖示例 效果示例图代码示例使用class 效果示例图 代码示例 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><style type"text/css">* {padding…

60题学会动态规划系列:动态规划算法第五讲

子数组系列题目 文章目录 1.最大子数组和2.环形子数组的最大和3.乘积最大数组4.乘积为正数的最长子数组长度5.等差数列划分6.最长湍流子数组7.单词拆分8.环绕字符串中唯一的子字符串 1.最⼤⼦数组和 力扣链接&#xff1a;力扣 给你一个整数数组 nums &#xff0c;请你找出一个…

数据库开发和数据库管理有什么区别?

数据库开发&#xff08;Database Development&#xff09;和数据库管理&#xff08;Database Administration&#xff09;是数据库领域中的两个关键角色和职责。 我这里刚好有嵌入式、单片机、plc的资料需要可以私我或在评论区扣个6 数据库开发人员专注于以下方面&#xff1a…

[RocketMQ] Broker 消息刷盘服务源码解析 (十二)

同步刷盘: 在消息真正持久化至磁盘后RocketMQ的Broker端才会真正返回给Producer端一个成功的ACK响应。异常刷盘: 能够充分利用OS的PageCache的优势, 只要消息写入PageCache即可将成功的ACK返回给Producer端。消息刷盘采用后台异步线程提交的方式进行, 降低了读写延迟和提高了MQ…

chatglm 130B:两个主要的稳定训练方法

解决方案&#xff1a;Qk转置的时候先用单精度来算&#xff0c;softmax的时候再转成FP16 第二个&#xff1a;embeddding 层梯度存在 emdedding层的梯度跟其它层的梯度表示范围相差的非常大&#xff0c;然后会导致这个对损失函数的这个缩放有一定的影响&#xff0c;为了解决这…

MATLAB 基于NDT的点云配准实验(不同参数效果) (25)

MATLAB 基于NDT的点云配准实验(不同参数效果) (25) 一、算法简介二、具体使用1.代码(注释详细)2.结果(不同参数 与ICP比较)一、算法简介 NDT点云配准与ICP一样,都是经典的点云配准算法,这里使用MATLAB进行ndt点云配准,对配准结果进行显示,并尝试不同参数,得到较好…

Spring学习笔记---SpringBoot快速入门

Spring学习笔记---SpringBoot快速入门 Spring学习笔记---SpringBoot1 SpringBoot简介1.1 SpringBoot快速入门1.1.1 开发步骤1.1.1.1 创建新模块1.1.1.2 创建 Controller1.1.1.3 启动服务器1.1.1.4 进行测试 1.1.2 对比1.1.3 官网构建工程1.1.3.1 进入SpringBoot官网1.1.3.2 选择…

MachineLearningWu_13_AGI

AGI的全称是artificial general intelligence&#xff0c;通用人工智能&#xff0c;而我们现在做的关于医学影像的分析&#xff0c;可以说完全是ANI。 而我们使用MLP对于大脑中神经网络的模拟更是完全不同于人类大脑的行为。

Css:高级技巧

1.精灵图使用 用ps的切片功能测量图片大小和位置 2.字体图标 3.CSS三角形 4.元素显示隐藏 5.鼠标样式 6.输入框input 轮廓线 7.防止文本域拖拽 8 vertical-align实现行内块和文字垂直居中对齐 9.单行文字溢出省略号显示 10.多行文字溢出省略号显示 11.布局技巧 1.相对定位会压…

(SVN+SSH)搭建SVN并使用SSH进行免密拉取推送代码

【SVNSSH】搭建SVN并使用SSH进行免密拉取推送代码 一、安装svn、openssh-server服务二、开启svn服务&#xff0c;创建测试仓库&#xff0c;并能通过账号密码拉取定义svn仓库文件位置创建仓库:acc_repo配置拉取仓库的账号密码通过账号密码拉取代码 三、创建测试仓库&#xff0c;…

Docker笔记 Dockerfile镜像原理以及制作镜像

1. Docker 镜像原理 思考&#xff1a; Docker镜像本质是什么&#xff1f; 答&#xff1a;是一个分层的文件系统。Docker中一个centos镜像为什么只有200MB&#xff0c;而一个centos操作系统的iso文件要几个G&#xff1f; 答&#xff1a;Centos的iso镜像包含bootfs和rootfs&…