青衣 发表于 2021-7-11 09:38:22

JQuery获取和修改元素;jQuery和js对象之间的转换

1.获取jQuery对象
var btns = document.getElementByTagName("button");//获取js对象
var $btns = $('button');//获取jQuery对象
var $btns = jQuery('button');//获取jQuery对象
var $btns = window.jQuery('button');//获取jQuery对象
(1)如果出现错误信息:$ is not defined 原因:JQuery属于第三方封装库,在使用时需要先引入对应的js文件
(2)命名:如果同一个文件中既有js对象又有jQuery对象,通常jQuery对象的前面会加上$来进行区分
(3)注意:jQuery的方式所获取到的元素都是一组元素,即便是按照ID获取的也是一组(该组中只有一个元素)

2.对象的转换
jQuery的形式获取到的都是一组元素,那么如果想要其中某一个元素对象,该怎么做?
(1)使用jQuery获取的对象同样是数组的形式,因此可以通过下标来查找元素.
(2)jQuery本身也提供了对应的方法来进行元素的查找即get(index)
通过上诉两种方案来获取对象后,获取到的对象就变成了js对象
例如:$btns本身是jQuery对象,$btns,$btns.get(1)就变成了js对象
影响:js对象不允许使用jQuery对象中的属性和方法,jQuery对象也不允许使用js对象中的方法和属性
js转jQuery:
使用$(js对象)
例如:btns是js对象,$(btns)是jQuery对象

3.值得获取和修改
text() html() val()
回顾js中是如何获取及修改元素的内容的:
btns.innnerHTML或btns.outerHTML 区别:后者带标签,前者只有标签的值
jQuery的形式获取和修改元素内容
text() html() val()没有参数代表获取,有参数代表是修改,参数即要修改的内容
text()获取到的是一组元素的合并文本
html()获取到的是一组元素中第一个元素的值
val()获取到的是一组元素中第一个元素的值
修改值时,text() html() val()都是修改一组元素中的所有元素的值


  
文档来源:51CTO技术博客https://blog.51cto.com/u_15295225/3025781
页: [1]
查看完整版本: JQuery获取和修改元素;jQuery和js对象之间的转换