当前位置: 首页 > news >正文

【Web】关于jQuery萌新必须要知道的那些基础知识

目录

DOM对象和jQuery包装集对象

jQuery选择器

jQuery操作元素的属性,样式,内容

jQuery创建元素和添加元素,删除元素和遍历元素

jQuery-ready加载事件

jQuery绑定事件

jQuery中ajax的使用


DOM对象和jQuery包装集对象

DOM对象:
DOM对象是指原生的JavaScript对象,它表示网页中的HTML元素或节点。通过使用document.getElementById()或其他DOM方法,可以获取到DOM对象。DOM对象具有一些原生的属性和方法,可以直接在JavaScript中使用

示例:

// 获取DOM对象
var element = document.getElementById("myElement");// 修改DOM对象的属性
element.style.color = "red";// 调用DOM对象的方法
element.addEventListener("click", function() {alert("Clicked!");
});

jQuery包装集对象:
jQuery包装集对象是由jQuery库创建的特殊对象,它是对DOM对象的封装和扩展。通过将DOM对象传递给jQuery函数($或jQuery),可以将其转换为jQuery对象,进而可以使用jQuery提供的丰富功能和方法来操作和处理元素。

示例:

// 获取jQuery包装集对象
var $element = $("#myElement");// 修改jQuery对象的样式
$element.css("color", "red");// 调用jQuery对象的事件处理方法
$element.click(function() {alert("Clicked!");
});

jQuery选择器

jQuery选择器是一种用于查找HTML元素的表达式,可以根据元素的ID、类名、属性等特征来定位和选择元素。jQuery提供了多种类型的选择器,包括基础选择器、层次选择器和表单选择器等。

  1. 基础选择器: 基础选择器是最常用的选择器类型,可以根据元素的标签名、ID、类名等特征来选择元素。以下是一些常见的基础选择器:

    • 标签选择器:使用元素的标签名来选择元素 示例代码:$("p") 选中所有的段落元素

    • ID选择器:使用元素的ID来选择元素 示例代码:$("#myId") 选中ID为"myId"的元素

    • 类选择器:使用元素的类名来选择元素 示例代码:$(".myClass") 选中所有类名为"myClass"的元素

    • 属性选择器:使用元素的属性值来选择元素 示例代码:$("input[type='text']") 选中所有type属性为"text"的input元素

  2. 层次选择器: 层次选择器是一种选择器类型,可以根据元素的父子关系或兄弟关系来选择元素。以下是一些常见的层次选择器:

    • 后代选择器:使用空格来选择元素的后代元素 示例代码:$("div p") 选中所有div元素内的p元素

    • 子元素选择器:使用">"来选择元素的子元素 示例代码:$("ul > li") 选中所有ul元素的直接子元素li元素

    • 兄弟选择器:使用"+"或"~"来选择元素的相邻兄弟元素或所有兄弟元素 示例代码:$("p + span") 选中所有紧跟在p元素后面的span元素

  3. 表单选择器: 表单选择器是一种选择器类型,可以根据元素的表单属性来选择元素。以下是一些常见的表单选择器:

    • :input选择器:选择所有的input、select、textarea和button元素 示例代码:$(":input") 选中所有的表单元素

    • :checked选择器:选择所有被选中的复选框或单选按钮元素 示例代码:$(":checked") 选中所有被选中的表单元素

    • :enabled选择器:选择所有可用的表单元素 示例代码:$(":enabled") 选中所有可用的表单元素

jQuery操作元素的属性,样式,内容

1.操作元素属性:
使用jQuery的attr()方法可以获取或设置元素的属性值。以下是一些常见的操作元素属性的代码示例:

    获取属性值:var value = $("img").attr("src");
    设置属性值:$("img").attr("src", "newsrc.jpg");

除了attr()方法外,还有prop()方法可以获取或设置元素的属性值。

2.操作元素样式:
使用jQuery的css()方法可以获取或设置元素的样式属性值。以下是一些常见的操作元素样式的代码示例:

    获取样式属性值:var value = $("div").css("color");
    设置样式属性值:$("div").css("color", "red");

可以通过传递一个对象参数来同时设置多个样式属性值:

$("div").css({"color": "red","background-color": "yellow"
});

3.操作元素内容:
使用jQuery的html()方法可以获取或设置元素的HTML内容,而text()方法可以获取或设置元素的纯文本内容。以下是一些常见的操作元素内容的代码示例:

    获取HTML内容:var htmlContent = $("div").html();
    设置HTML内容:$("div").html("<p>New HTML content</p>");
    获取纯文本内容:var textContent = $("p").text();
    设置纯文本内容:$("p").text("New text content");

另外还有val()方法可以获取或设置表单元素的值。

jQuery创建元素和添加元素,删除元素和遍历元素

  1. 创建元素: 使用jQuery的$()函数可以创建新的HTML元素。以下是一些常见的创建元素的代码示例:

    • 创建div元素:var newDiv = $("<div>");
    • 创建带有文本内容的p元素:var newParagraph = $("<p>New paragraph content</p>");

    这些新创建的元素可以与现有的元素一样被添加到页面上。

  2. 添加元素: 使用jQuery的append()prepend()after()before()方法可以将元素添加到指定的位置上。以下是一些常见的添加元素的代码示例:

    • 在某个元素内部的末尾添加新元素:$("div").append("<p>New paragraph content</p>");
    • 在某个元素内部的开头添加新元素:$("div").prepend("<p>New paragraph content</p>");
    • 在某个元素后面添加新元素:$("div").after("<p>New paragraph content</p>");
    • 在某个元素前面添加新元素:$("div").before("<p>New paragraph content</p>");

    可以通过传递一个jQuery对象或HTML元素作为参数来添加已经存在的元素。

  3. 删除元素: 使用jQuery的remove()方法可以从DOM中删除元素。以下是一些常见的删除元素的代码示例:

    • 删除某个元素:$("div").remove();
    • 删除某个元素的子元素:$("div").empty();
  4. 遍历元素: 使用jQuery的each()方法可以遍历一个或多个元素,并对它们进行操作。以下是一些常见的遍历元素的代码示例:

    • 遍历所有的段落元素并打印它们的文本内容:$("p").each(function() { console.log($(this).text()); });
    • 遍历某个元素的子元素并添加类名:$("div").children().each(function() { $(this).addClass("myClass"); });

    each()方法接受一个回调函数作为参数,该函数在每次遍历到一个元素时被调用。在回调函数中,this指向当前遍历到的元素,可以使用jQuery的包装器函数$(this)将其转换为jQuery对象。

jQuery-ready加载事件

jQuery的ready()方法是一个很有用的事件,它会在文档加载完成后立即执行。它可以确保在JavaScript代码执行之前,页面中所需的所有DOM元素都已加载并可以使用。

以下是使用jQuery的ready()方法的代码示例:

$(document).ready(function() {// 在这里编写需要在DOM加载完成后执行的代码
});

上面的代码将在文档加载完成后执行其中的回调函数。可以在回调函数中编写需要在DOM加载完成后执行的JavaScript代码,如绑定事件、修改元素属性等操作。

为了简化代码,可以使用缩写形式来写ready()方法:

$(function() {// 在这里编写需要在DOM加载完成后执行的代码
});

上面的代码与之前的代码等效,都会在文档加载完成后执行其中的回调函数。

jQuery绑定事件

在jQuery中,可以使用on()方法来绑定事件处理程序,该方法可以用于绑定多种类型的事件,如点击事件、鼠标移入事件、键盘按下事件等。

以下是一个简单的示例,演示了如何在页面加载完成后使用jQuery来绑定一个按钮的点击事件:

$(document).ready(function() {// 选取按钮元素,并绑定点击事件处理程序$("#myButton").on("click", function() {alert("按钮被点击了!");});
});

在上面的示例中,on()方法用于为ID为myButton的按钮元素绑定一个点击事件处理程序。当按钮被点击时,弹出一个警告框显示"按钮被点击了!"。

除了点击事件,on()方法还可以用于绑定其他类型的事件。例如,可以使用下面的代码来在鼠标悬停在某个元素上时触发事件:

$(document).ready(function() {// 选取元素,并绑定鼠标悬停事件处理程序$(".hoverMe").on("mouseenter", function() {$(this).css("color", "red");});// 当鼠标移出时恢复原来的颜色$(".hoverMe").on("mouseleave", function() {$(this).css("color", "black");});
});

上面的代码为类名为hoverMe的元素绑定了鼠标悬停和鼠标离开事件处理程序,当鼠标悬停在元素上时,文字颜色变为红色,当鼠标移出时恢复原来的颜色。

另外,on()方法还可以用于动态绑定事件处理程序,通过传递选择器作为第二个参数,可以绑定未来添加到DOM中的元素的事件处理程序。这对于动态生成的内容或通过AJAX加载的内容非常有用。

jQuery中ajax的使用

在jQuery中,可以使用$.ajax()方法来执行异步的HTTP请求。这个方法提供了在网页和服务器之间进行数据交换的强大功能,可以用于获取服务器上的数据、发送数据到服务器以及更新页面上的部分内容。

下面是一个简单的示例,演示了如何使用$.ajax()方法向服务器发送GET请求并处理返回的数据:

$.ajax({url: "example.php", // 要请求的URLmethod: "GET", // 请求方法,可以是"GET"或"POST"data: { name: "binjie", age: 25 }, // 发送到服务器的数据success: function(response) {// 成功时执行的回调函数console.log("成功获取到数据:", response);},error: function(xhr, status, error) {// 失败时执行的回调函数console.log("发生错误:", error);}
});

在上面的示例中,我们使用$.ajax()方法向example.php发送了一个GET请求,同时传递了一些数据。如果请求成功,服务器返回的数据将会被传递给success回调函数;如果请求失败,将会执行error回调函数。

除了简单的GET请求,$.ajax()方法还可以执行POST请求、JSONP请求、跨域请求等。下面是一个执行POST请求的示例:

$.ajax({url: "submit_data.php", // 请求的URLmethod: "POST", // 请求方法data: { username: "binjie", password: "123456" }, // 发送到服务器的数据success: function(response) {// 成功时执行的回调函数console.log("数据提交成功:", response);},error: function(xhr, status, error) {// 失败时执行的回调函数console.log("提交数据时发生错误:", error);}
});

在实际项目中,通常会将$.ajax()方法封装成一个函数,以便复用和统一处理错误。例如:

function fetchData(url, method, requestData, successCallback, errorCallback) {$.ajax({url: url,method: method,data: requestData,success: successCallback,error: errorCallback});
}// 使用封装好的函数
fetchData("example.php", "GET", { id: 123 }, function(response) {console.log("成功获取到数据:", response);
}, function(xhr, status, error) {console.log("发生错误:", error);
});

相关文章:

【Web】关于jQuery萌新必须要知道的那些基础知识

目录 DOM对象和jQuery包装集对象 jQuery选择器 jQuery操作元素的属性&#xff0c;样式&#xff0c;内容 jQuery创建元素和添加元素&#xff0c;删除元素和遍历元素 jQuery-ready加载事件 jQuery绑定事件 jQuery中ajax的使用 DOM对象和jQuery包装集对象 DOM对象&#xf…...

第 1 章 微信小程序与云开发从入门到实践从零开始做小程序——开发认识微信小程序

小北的参考工具书 小程序开发的图书并不少&#xff0c;这本书仍然值得你拥有&#xff01; 首先&#xff0c;这是一本全栈小程序开发教程&#xff0c;循序渐进&#xff0c;由浅入深&#xff0c;介绍了小程序开发你想了解的方方面面&#xff0c;包括近其小程序开发的各种新技术应…...

数据隐私安全趋势

在当今社交媒体和开源开发的世界中&#xff0c;共享似乎已成为社会常态。毕竟&#xff0c;我们都被教导分享就是关怀。这不仅适用于个人&#xff0c;也适用于公司&#xff1a;无论是有意在社交媒体帐户和公司网站上&#xff0c;还是无意中通过员工的行为&#xff0c;公司可能会…...

学习磁盘管理

文章目录 一、磁盘接口类型二、磁盘设备的命名三、fdisk分区四、自动挂载五、扩容swap六、GPT分区七、逻辑卷管理八、磁盘配额九、RAID十、软硬链接 一、磁盘接口类型 IDE、SATA、SCSI、SAS、FC&#xff08;光纤通道&#xff09; IDE, 该接口是并口。SATA, 该接口是串口。SCS…...

C语言从入门到精通(一) - C语言开发神器CLion

clion安装配置 下载安装 下载 安装 运行clion clion设置 配置快捷键 配置快捷键为eclipse模式 [可以选择自己喜欢的快捷键模式] 添加cygwin编译器 下载cygwin Cygwin Installation Cygwin是一个在windows平台上运行的类UNIX模拟环境&#xff0c;是Cygnus Solutions公司开发的…...

【办公类-16-10-02】“2023下学期 6个中班 自主游戏观察记录(python 排班表系列)

背景需求&#xff1a; 已经制作了本学期的中4班自主游戏观察记录表 【办公类-16-10-01】“2023下学期 中4班 自主游戏观察记录&#xff08;python 排班表系列&#xff09;-CSDN博客文章浏览阅读398次&#xff0c;点赞10次&#xff0c;收藏3次。【办公类-16-10-01】“2023下学…...

SpringBooot之RestTemplate接口返回多层泛型导致java.util.LinkedHashMap cannot be cast to异常

统一泛型返回对象 Data public class Res<T> implements Serializable {private static final long serialVersionUID 6558796578827818466L;private Integer code; //状态码private String msg; //返回消息private T data; //数据 }data里包裹的泛型对象假设是DZPJ D…...

【新三板年报文本分析】第二辑:从pdf链接的列表中批量下载年报文件

第一辑中已经获取了新三板年报的pdf链接&#xff0c;使用request库进行批量下载。 send_headers为requests的headers&#xff0c;不需要做变动。 在for循环中读取每一行数据的链接数据&#xff0c;创建一个空pdf&#xff0c;将链接指向的pdf文件写入空pdf文件。 for循环内容…...

Jessibuca 插件播放直播流视频

jessibuca官网&#xff1a;http://jessibuca.monibuca.com/player.html git地址&#xff1a;https://gitee.com/huangz2350_admin/jessibuca#https://gitee.com/link?targethttp%3A%2F%2Fjessibuca.monibuca.com%2F 项目需要的文件 1.播放组件 <template ><div i…...

【Docker】03 容器操作

文章目录 一、流转图二、基本操作2.1 查看本地容器进程2.2 启动容器2.2.1 交互式启动容器2.2.2 后台启动容器 2.3 进入容器2.4 停止启动重启容器2.5 退出容器2.6 删除容器2.7 提交容器&#xff08;打包成镜像&#xff09;2.8 拷贝文件2.8.1 拷贝容器内文件到宿主机2.8.2 拷贝宿…...

【HarmonyOS】鸿蒙开发之Stage模型-基本概念——第4.1章

Stage模型-基本概念 名词解释 AbilityStage:应用组件的“舞台“ UIAbility:包含UI界面的应用组件&#xff0c;是系统调度的基本单元 WindowStage:组件内窗口的“舞台“ Window&#xff1a;用来绘制UI页面的窗口 HAP:Harmony Ability Package(鸿蒙能力类型的包) HSP:Harmony Sh…...

什么是芯片委外管理系统? 及其主要作用

随着半导体产业的飞速发展&#xff0c;芯片制造企业面临着日益复杂的生产和管理挑战。为了应对这些挑战&#xff0c;许多企业选择将部分生产环节委托给外部厂商进行&#xff0c;这种合作模式被称为“委外加工”。而为了有效地管理和协调这一合作模式&#xff0c;便诞生了“芯片…...

【实战-08】 flink自定义Map中的变量的行为

场景 自定义Map或者别的算子的时候&#xff0c;有时候需要定义一些类变量&#xff0c;在flink内部高并发的情况下需要正确理解这些变量的行为 代码 package com.pg.function;import org.apache.flink.api.common.functions.MapFunction; import org.apache.flink.api.common…...

Docker Volume

"Ice in my vein" Docker Volume(存储卷) 什么是存储卷? 存储卷就是: “将宿主机的本地文件系统中存在的某个目录&#xff0c;与容器内部的文件系统上的某一目录建立绑定关系”。 存储卷与容器本身的联合文件系统&#xff1f; 在宿主机上的这个与容器形成绑定关系…...

开源计算机视觉库OpenCV常用的API介绍

阅读本文之前请参阅-----开源计算机视觉库OpenCV详细介绍 OpenCV&#xff08;开源计算机视觉库&#xff09;是一个跨平台的计算机视觉和机器学习软件库&#xff0c;它提供了大量的API&#xff08;应用程序编程接口&#xff09;&#xff0c;用于处理图像和视频分析、对象检测、面…...

pytorch -- torch.nn下的常用损失函数

1.基础 loss function损失函数&#xff1a;预测输出与实际输出 差距 越小越好 - 计算实际输出和目标之间的差距 - 为我们更新输出提供依据&#xff08;反向传播&#xff09; 1. L1 torch.nn.L1Loss(size_averageNone, reduceNone, reduction‘mean’) 2. 平方差&#xff08;…...

daydayEXP: 支持自定义Poc文件的图形化漏洞利用工具

daydayEXP: 支持自定义Poc文件的图形化漏洞利用工具 基于java fx写的一款支持加载自定义poc文件的、可扩展的的图形化渗透测试框架。支持批量漏洞扫描、漏洞利用、结果导出等功能。 使用 经过测试,项目可在jdk8环境下正常使用。jdk11因为缺少一些必要的组件,所以jdk11版本工…...

无法访问云服务器上部署的Docker容器(二)

说明&#xff1a;记录一次使用公网IP 接口地址无法访问阿里云服务接口的问题&#xff1b; 描述 最近&#xff0c;我使用Docker部署了jeecg-boot项目&#xff0c;部署过程都没有问题&#xff0c;也没有错误信息。部署完成后&#xff0c;通过下面的地址访问后端Swagger接口文档…...

在Pycharm中运行Django项目如何指定运行的端口

方法步骤&#xff1a; 打开 PyCharm&#xff0c;选择你的 Django 项目。在菜单栏中&#xff0c;选择 “Run” -> “Edit Configurations...”。在打开的 “Run/Debug Configurations” 对话框中&#xff0c;选择你的 Django server 配置&#xff08;如果没有&#xff0c;你…...

Android将 ViewBinding封装到BaseActivity基类中(Java版)

在Android中使用Java语言将ViewBinding封装到基类中&#xff0c;操作步骤如下&#xff1a; 1、在项目的build.gradle文件中启用了ViewBinding&#xff0c;添加以下代码&#xff1a; android {...buildFeatures {viewBinding true} } 2、创建一个名为“BaseActivity”的基类&…...

生成xcframework

打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式&#xff0c;可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 &#xff08;一&#xff09;实时滤波与参数调整 基础滤波操作 60Hz 工频滤波&#xff1a;勾选界面右侧 “60Hz” 复选框&#xff0c;可有效抑制电网干扰&#xff08;适用于北美地区&#xff0c;欧洲用户可调整为 50Hz&#xff09;。 平滑处理&…...

DAY 47

三、通道注意力 3.1 通道注意力的定义 # 新增&#xff1a;通道注意力模块&#xff08;SE模块&#xff09; class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述&#xff1a;iview使用table 中type: "index",分页之后 &#xff0c;索引还是从1开始&#xff0c;试过绑定后台返回数据的id, 这种方法可行&#xff0c;就是后台返回数据的每个页面id都不完全是按照从1开始的升序&#xff0c;因此百度了下&#xff0c;找到了…...

376. Wiggle Subsequence

376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...

江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命

在华东塑料包装行业面临限塑令深度调整的背景下&#xff0c;江苏艾立泰以一场跨国资源接力的创新实践&#xff0c;重新定义了绿色供应链的边界。 跨国回收网络&#xff1a;废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点&#xff0c;将海外废弃包装箱通过标准…...

ffmpeg(四):滤镜命令

FFmpeg 的滤镜命令是用于音视频处理中的强大工具&#xff0c;可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下&#xff1a; ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜&#xff1a; ffmpeg…...

生成 Git SSH 证书

&#x1f511; 1. ​​生成 SSH 密钥对​​ 在终端&#xff08;Windows 使用 Git Bash&#xff0c;Mac/Linux 使用 Terminal&#xff09;执行命令&#xff1a; ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​&#xff1a; -t rsa&#x…...

大学生职业发展与就业创业指导教学评价

这里是引用 作为软工2203/2204班的学生&#xff0c;我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要&#xff0c;而您认真负责的教学态度&#xff0c;让课程的每一部分都充满了实用价值。 尤其让我…...