> 技术文档 > 【前端】-jQuery(带你让你深入了解学习使用jQuery)_jquery是干什么的

【前端】-jQuery(带你让你深入了解学习使用jQuery)_jquery是干什么的


引言:  jQuery 是一个轻量级的 JavaScript 库,自 2006 年发布以来,它迅速成为 Web 开发中不可或缺的工具。它通过提供简洁的语法和强大的功能,简化了 HTML 文档操作、事件处理、动画效果以及 AJAX 请求的实现。jQuery 允许开发者以更少的代码实现复杂的任务,提升开发效率。此外,jQuery 还具备良好的跨浏览器兼容性,使得开发者无需关注不同浏览器间的差异,能够专注于构建更好的用户体验。无论是初学者还是经验丰富的开发者,jQuery 都是实现现代 Web 应用的强大助手。

 因为使用jQuery需要引入jQuery的js文件,所以大家需要下载jQuery相应的js文件

下载步骤:

 jQuery官网:jQuery

点击显示下面的网页,然后使用快捷键ctrl+s进行保存到文件夹中,就可以在vscode上直接使用了 (我下的就是3.7.1版本的)

 jQuery的使用:

1.对象:

1.1jQuery包装级对象:
 
jquery
//jQuery包装级对象 var div = $(\'mydiv\') console.log(div)

输出语句如下图所示 :

 

 1.2jQuery包装级对象和dom对象之间的转换
 // DOM对象转jQuery对象 var domDiv = document.querySelector(\'#mydiv\') mydiv = $(domDiv) // jQuery转DOM对象 var div = $(\'mydiv\') var dom = div[0]

 2.选择器:

2.1基础选择器

  1.  元素选择器     元素名

  2.  类选择器    .类名

  3.  id选择器    #id名

  4.  通用选择器     *

  5.  混合选择器    选择器1,选择器2

!- - 这个是标准的使用jQuery的框架,下面再书写代码时外面的js引入以及script元素将会省略 - - !

 
id
class
元素名

p

 // id选择器 let idiv = $(\'#idiv\') // 类选择器 let cdiv = $(\'.cdiv\') // 元素选择器 let div = $(\'div\') // 通用选择器 let divAll = $(\'*\') // 混合选择器 let divSome = $(\'div,p\') console.log(idiv) console.log(cdiv) console.log(div) console.log(divAll) console.log(divSome)

以下是输出语句 

关于第四个,通用选择器有12个:

 html head meta meta title body div#idiv div.cdiv div p script script

2.2层次选择器

    1.后代选择器(父元素 指定元素)

    2.子选择器(父元素 > 指定元素)

    3.相邻选择器(父元素 + 指定元素)

    4.同辈选择器(父元素~指定元素)

子选择器
 let div1 = $(\'#parent div\') console.log(div1) let div2 = $(\'#parent>div\') console.log(div2) let div3 = $(\'#child>img\') console.log(div3) let div4 = $(\'img+img\') console.log(div4)

2.3表单选择器:
  
 //表单选择器:input,会匹配所有的input textarea select button 元素 let input = $(\':input\') console.log(input)

3.操作元素:

3.1操作元素的属性;

  获取属性

  (

    元素分类

    固有属性:元素本身有的属性 id,name,class,style

    返回值是boolean类型的属性 (checked,selected,disabled)

    自定义属性 用户自己定义的属性

  )

  attr(\'属性名\') 获取的是属性值  没有属性值就是undefined

  prop(\'属性名\') 对于固有属性获得的是属性值,对于boolean类型获得true和false,本可获得prop()

  设置属性

  移除属性

  

获取元素的属性

 //固有属性 let name = $(\'#aa\').attr(\'name\') console.log(name) //box //boolean属性 let check1 = $(\'#aa\').attr(\'checked\') //checked let check2 = $(\'#aa\').prop(\'checked\') //true let check3 = $(\'#bb\').attr(\'checked\') //undefined let check4 = $(\'#bb\').prop(\'checked\') //false //自定义属性 let aaa1 = $(\'#aa\').attr(\'abc\') //aaa let aaa2 = $(\'#aa\').prop(\'abc\') //undefined

设置元素属性

 //设置属性 value是固有属性 $(\"#aa\").attr(\'value\', \'1\') $(\"#bb\").prop(\'value\', \'2\') //设置boolean属性 $(\"#bb\").attr(\'checked\', \'\') //让第二个选框也被选中 $(\"#bb\").prop(\'checked\', false) //设置第二个选框的属性值为false不被选中 //自定义属性 prop不可设置 $(\"#aa\").attr(\'uname\', \'admin\') //设置uname=\'admin\' $(\"#aa\").prop(\'uname1\', \'admin1\')
3.2 获取元素样式

  attr(\'class\')  获取元素的样式名

  attr(\'class\', \'样式名\')  设置元素的样式

  addClass(\'样式名\')  添加样式  在原来基础上添加样式

  css()  添加具体样式(行内样式)  css(\'样式名\',\'样式值\')设置单个样式   css({\'样式名\':\'样式值\',\'样式名\':\'样式值\'})设置多个

  removeClass(\'样式名\')  移除样式

 

css()方法设置

蓝色
红色
无色
 .blue { width: 100px; height: 100px; background-color: blue; } .red { width: 100px; height: 100px; background-color: red; } .green { width: 100px; height: 100px; background-color: green; }
let a1 = $(\"#1\").attr(\"class\") //blue // 设置元素属性(如果之前有那么class属性就替换,没有就添加) $(\"#1\").attr(\'class\', \'red\') $(\"#3\").attr(\'class\', \'green\') // 添加样式 后面的css会覆盖上面的css样式,显示后面的css样式(覆盖不替换) $(\"#1\").addClass(\'green\') // 通过css添加样式 $(\"h3\").css(\'font-size\', \'20px\') $(\"h3\").css(\'color\', \'blue\') //删除class属性 $(\"#1\").removeClass(\'green\')
3.3操作元素内容

  html()  获取元素内容 包括HTML标签 非表单标签

  html(\'内容\')  设置元素内容 包括HTML标签 非表单标签

  text() 获得元素的纯文本内容,不包括HTML标签(非表单元素)

  text(\'内容\')  设置元素的纯文本内容,不包括HTML标签(非表单元素)

  val()  获取元素的值(表单元素)

  val(\'值\')  设置元素的值(表单元素)

  表单元素:text, password, radio, checkbox, 隐藏寓hidden, textarea, select

 

html()和text()方法设置元素内容

 //设置元素 $(\"#html1\").html(\'年后\') //页面显示年后 $(\"#html2\").html(\'年后\') //年后 //获得元素 let a1 = $(\"#html1\").html() //年后 let a2 = $(\"#html2\").html() //年后 //设置元素 $(\"#text1\").text(\'

上海

\') //页面中显示

上海

$(\"#text2\").text(\'上海\') //上海 //获得元素 let b1 = $(\"#text1\").text() //

上海

let b2 = $(\"#text2\").text() //上海 let val1 = $(\"#o\").val() console.log(val1) //0 let val2 = $(\"#o\").val(\"你好\") console.log(val2.val()) //你好

下面为浏览器中显示的内容 

 4.删除元素

  删除元素

  remove()

  删除元素及其子元素 标签内容一起删除

  empty()

  清空元素内容,保留标签

 

删除元素

1 2 1 2
 $(\'.blue\').remove() $(\'.green\').empty()

5.遍历内容:

通过使用each()方法遍历内容

 1 2 3 4
$(\'.green\').each(function (index, element) { console.log(index) console.log(element) console.log($(element)) console.log($(this)) })

6.事件:

6.1加载事件:

    ready 加载事件

    当页面中的dom结构加载完毕后执行

    类似js中的load事件

加载事件的语法:

 语法 $(document).ready(function () { }) 简写 $(function () { })

文本

 $(document).ready(function () { console.log($(\'#p1\')) })

 6.2绑定事件:

  基础语法:

  $(selector).bind(eventType, eventData, handler)

  ----------------------------------------------------------------

  eventType:要绑定的事件类型,例如 \'click\'、\'mouseover\'、\'resize\' 等。

  eventData:可选参数,传递给事件处理器的额外数据。

  handler:事件发生时要执行的函数。

 绑定单个事件  ---  1.直接绑定   2.bind绑定

  绑定多个事件(不常用(大家理解即可))

  为多个事件绑定同一个函数

  指定元素.bind(\'事件类型1,事件类型2,事件类型3\', function () { })

  1.指定元素.bind(\'事件类型\', function () {

   }).bind(\'事件类型\', function () {

   })

   2指定元素.bind({

    \'事件类型\': function () { }, \'事件类型\': function () { }

  })

 // bind()绑定 $(\'#myButton\').bind(\'click\', function () { console.log(\'按钮被点击了!\'); }); // 直接绑定 $(\'#myButton\').click(function () { console.log(\'按钮被点击了!\'); })

7.ajax

  jQuery调用ajax方法:

  格式:  $.ajax({})

  参数:type:请求方式GET/POST

        url 请求地址

        async 是否异步

        data 发送红岛服务器的数据

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

        contentType 设置请求头

        succes 请求成功调用此函数

        error 请求失败后调用此函数

$.ajax({ url: \'https://api.example.com/data\', // 请求的 URL type: \'GET\', // 请求类型(GET 或 POST) dataType: \'json\', // 预期服务器返回的数据类型 success: function(data) { console.log(\'成功:\', data); }, error: function(jqXHR, textStatus, errorThrown) { console.error(\'请求失败:\', textStatus, errorThrown); }});

输出如下: 

jQuery分享到这里基本解释了,感谢大家的观看!