文档对象模型(Document Object Model,简称 DOM),是 W3C 组织推荐的处理可扩展 标志语言的标准编程接口。 通过 DOM 对 HTML 页面的解析,可以将页面元素解析为元素节点、属性节点和文本节 点,这些解析出的节点对象,即 DOM 对象。DOM 对象可以使用 JavaScript 中的方法。
更加通俗的来说,使用JS语法创建的对象叫做JS对象,也叫做DOM对象。
var obj = document.getElementById("txt1")
而使用JQuery语法创建的对象叫做JQuery对象。
var jobj = $("#txt1")
不过要注意的是,jQuery对象是一个数组,即使只有一个值也是数组。
有时候我们DOM对象想要使用JQuery的方法,JQuery对象想使用DOM对象的方法,所以我们就需要对对象的类型进行转换。
DOM对象转jQuery对象:
var obj = $(jobj)
JQuery对象转DOM对象:
我们已经知道jQuery对象是一个数组,所以我们可以使用下标的方式获取DOM对象
var obj = jobj.get(index)
var obj = jobj[index]
选择器就是定位条件;通知 jquery 函数定位满足条件的 DOM 对象。
这个就是通过标签的ID来定位到某个具体的对象,这里id是参数
var jobj = $("#id")
这个就是通过类名获取所有该类的标签,这里class是类名。
var jobj = $(".class")
标签选择器就是根据标签的名字获取DOM对象,这里div是示例标签名。
var jobj = $("div")
所有选择器就是选取页面中所有 DOM 对象。
var jobj = $("*")
所谓的组合选择器就是将id、类名、标签名组合起来选取对应的DOM对象。
var jobj = $("id,class,标签名")
表单相关元素选择器是指文本框、单选框、复选框、下拉列表等元素的选择方式。该方法无论是否存在表单,均可做出相应选择。表单选择器是为了能更加容易地操作表单。
$(":type属性值")
<!-- 例子 -->
$(":text")选取所有的单行文本框
$(":password")选取所有的密码框
$(":radio")选取所有的单选框
$(":checkbox")选取所有的多选框
$(":file")选取所有的上传按钮
过滤器就是过滤条件,对已经定位到数组中 DOM 对象进行过滤筛选,过滤条件不能独立出现在 jquery 函数,如果使用只能出现在选择器后方。
$("选择器:first")
$("选择器:last")
$("选择器:eq(数组索引)")
$("选择器:lt(数组索引)")
$("选择器:gt(数组索引)")
注意索引是从0开始。
$(":text:enabled")
$(":text:disabled")
$(":checkbox:checked")
$("选择器 > option:selected")
最后一个有点抽象,举个例子吧:
<select id="lang">
<option value="抽烟">抽烟option>
<option value="喝酒" selected>喝酒option>
<option value="烫头">烫头option>
select>
下面我们使用最后一个过滤器获得下拉列表中被选中的元素
var obj = $("#lang > option:selected")
无参的话则默认返回JQuery对象(这是一个数组前面已经说过了)中第一个DOM对象的value值
$(选择器).val()
有参的话,那么就会对JQuery对象中所有DOM对象进行统一赋值
$(选择器).val("参数")
无参则读取所有DOM对象中的文本内容,将其拼接成一个字符串返回
$(选择器).text()
有参则对JQuery对象中的所有DOM对象的文本显示内容统一赋值
$(选择器).text("参数")
无参的情况下默认获取第一个DOM对象的第一个属性值
$(选择器).attr()
有一个参数的情况下获取指定属性名的值
$(选择器).attr("src")
有两个参数的情况下则给指定属性赋值
$(选择器).attr("src", "img/img.jpg")
将JQuery对象中的所有DOM对象隐藏起来
$(选择器).hide()
将数组中的所有DOM对象展示出来
$(选择器).show()
将数组中的所有DOM对象及其子对象删除
$(选择器).remove()
将数组中所有 DOM 对象的子对象删除
$(选择器).empty()
为数组中所有DOM对象添加子对象
$(选择器).append("测试样例")
- 1
4.9 html()
该函数设置或返回被选元素的内容(innerHTML)
无参获取 DOM 数组第一个匹元素的内容
$(选择器).html()
- 1
有参则对所有DOM对象的内容赋值
$(选择器).html("设置文本内容")
- 1
- html()与text()函数的区别:
- 这里如果DOM对象的内容包含了HTML代码(例如哈
哈),使用text函数返回的是”哈哈“,而如果使用html函数则返回的是”哈
哈“
4.10 each()
each 是对数组,json 和 dom 数组等的遍历,对每个元素调用一次函数
$.each( 要遍历的对象, function(index,element) { 处理程序 } )
- 1
5.事件
5.1 定义元素监听事件
监听事件名称是 js 事件中去掉 on 后的内容, js 中的 onclick 的监听事件名称是 click。
$(选择器).监听事件名称(处理函数)
$("#id").click(function(...))
- 1
- 2
5.2 on()绑定事件
on() 方法在被选元素上添加事件处理程序。该方法给 API 带来很多便利,推荐使用该方法。
语法规则:
$().on(event,data,function)
- 1
- event:可以为一个或者多个事件,多个事件用空格隔开。
- data:可选,规定传递到函数的额外数据,使用json 格式
- function:可选。规定当事件发生时运行的函数。
6.AJAX
jQuery 提供多个与 AJAX 有关的方法。通过 jQuery AJAX 方法,您能够使用 HTTP Get 和 HTTP Post 从远程服务器上请求文本、HTML、XML 或 JSON 同时能够把接收的数据更新 到 DOM 对象
6.1 $.ajax()
$.ajax() 是 jQuery 中 AJAX 请求的核心方法,所有的其他方法都是在内部使用此方法。
语法规则:
$.ajax({
name:value,
name:value,
name:value,
...
})
- 1
- 2
- 3
- 4
- 5
- 6
该函数的参数是一组json格式的数据。下面我们来说常用的参数:
- async:boolean值,表示请求是否异步处理,默认是true
- contentType:发送数据到服务器的内容类型,默认是"application/x-www-form-unlencoded"
- data:规定要发送到服务器的数据,可以是string、数组,多数是json
- dataType:期望从服务器响应的数据类型。jQuery 从 xml, json, text, html 这些中测试最可能的类型
- error(xhr,status,error):如果请求失败要运行的函数, 其中 xhr, status, error 是自定义的形参名
- success(result,status,xhr):当请求成功时运行的函数,其中 result, status, xhr 是自定义的形参名
- type:规定请求的类型(GET 或 POST 等),默认是 GET, get,post 不用区分大小写 url:规定发送请求的 URL。
以上xhr是XMLHttpRequest对象。
举个例子:
$.ajax({
// 请求方式
type : "get",
// 请求路径
url : "/ajax/listArea",
// 附加数据
data : "t=" + new Date().getTime(),
// 支持异步
async : true,
// 请求成功,zhi'xing'ha
success : function(jsonArr){
var html = "";
for (var i = 0; i < jsonArr.length; i++) {
var area = jsonArr[i]
html += "+area.name+""
}
$("#province").html(html)
}
})
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
-
相关阅读:
GFS 分布式文件系统
Node.js 实战 第2章 Node 编程基础 2.9 异步开发的难题
第一章:前言
【视频】报告分享|展望人工智能银行:当银行遇到AI
前端面试题:基础理论整理(篇2)
【业务场景】用户连点
【Mybatis源码】XMLConfigBuilder构建器 - 加载XML与创建Configuration对象的过程
深度学习YOLOv5车辆颜色识别检测 - python opencv 计算机竞赛
目标检测算法——YOLOV6
聊一聊责任链模式
-
原文地址:https://blog.csdn.net/qq_52002412/article/details/126692873