JQuery入门

2023-11-10

JQuery:
  • jQuery 是一个 JavaScript 库。
  • 所谓的库,就是一个 JS 文件,里面封装了很多预定义的函数,比如获取元素,执行隐藏、移动等,目的就 是在使用时直接调用,不需要再重复定义,这样就可以极大地简化了 JavaScript 编程。
  • jQuery 官网:https://www.jquery.com
  • 使用必须要引入jQuery的文件
  • jQuery的语法:$();
快速入门:
<body>
    <div id="div">我是div</div>
</body>
<!--引入 jQuery 文件-->
<script src="js/jquery-3.3.1.min.js"></script>
<script>
    // JS方式,通过id属性值来获取div元素
    let jsDiv = document.getElementById("div");
    alert(jsDiv);
    alert(jsDiv.innerHTML);

    // jQuery方式,通过id属性值来获取div元素
    let jqDiv = $("#div");
    alert(jqDiv);
    alert(jqDiv.html());
</script>
JS对象和JQuery对象转换:

jQuery 本质上虽然也是 JS,但如果想使用 jQuery 的属性和方法那么必须保证对象是 jQuery 对象,而不是 JS 方式获得的 DOM 对象,二者的 API 方法不能混合使用,若想使用对方的 API,需要进行对象的转换。

JQuery 对象 [索引];
JQuery 对象.get(索引);

JS 的 DOM 对象转换成 jQuery 对象

  //$(JS 的 DOM 对象);
  
  // JS方式,通过id属性值获取div元素
  let jsDiv = document.getElementById("div");
  alert(jsDiv.innerHTML);
  //alert(jsDiv.html());  JS对象无法使用jQuery里面的功能
  
  // 将 JS 对象转换为jQuery对象
  let jq = $(jsDiv);
  alert(jq.html());

jQuery 对象转换成 JS 对象

/*jQuery 对象[索引];
jQuery 对象.get(索引);*/

// jQuery方式,通过id属性值获取div元素
let jqDiv = $("#div");
alert(jqDiv.html());
// alert(jqDiv.innerHTML);   jQuery对象无法使用JS里面的功能

// 将 jQuery对象转换为JS对象
let js = jqDiv[0];
alert(js.innerHTML);
事件的基本使用:

在 jQuery 中将事件封装成了对应的方法。去掉了 JS 中的 .on 语法。

常用的事件
在这里插入图片描述
代码实现:

<body>
<input type="button" id="btn" value="点我">
<br/>
<input type="text" id="input">
</body>
<script src="jquery-3.3.1.min.js"></script>
<script>
    // 单击事件
    $("#btn").click(function () {
        alert("点我弄啥啊")
    });

    // 获取焦点事件
    $("#input").focus(function () {
        alert("请输入数据")
    });

    // 失去焦点事件
    $("#input").blur(function () {
        alert("谢谢输入")
    });
</script>
时间的绑定和解绑:

绑定事件: jQuery 对象.on(事件名称,执行的功能);

解绑事件: jQuery 对象.off(事件名称);

如果不指定事件名称,则会把该对象绑定的所有事件都解绑

<body>
<input type="button" id="btn1" value="点我">
<input type="button" id="btn2" value="解绑">
</body>
<script src="jquery-3.3.1.min.js"></script>
<script>
    // btn1绑定单击事件
    $("#btn1").on("click", function () {
        alert("弄啥啊")
    });

    // 通过btn2解绑btn1的事件
    $("#btn2").on("click", function () {
        $("#btn1").off("click");
    });
</script>
时间的切换:

事件的切换:需要给同一个对象绑定多个事件,而且多个事件还有先后顺序关系。

  • 方式一:单独定义

$(元素).事件方法名1(要执行的功能);

$(元素).事件方法名2(要执行的功能);

<script>
    // 方式一:单独定义
    $("#div").mousemove(function () {
        // 添加背景色  黑色
        // $("div").css("background", "black")
        $(this).css("background", "black")   //简写
    });
    $("#div").mouseout(function () {
        // 背景色 蓝色
        // $("#div").css("background", "blue");
        $(this).css("background", "blue")  
    });
</script>
  • 方式二:链式定义

$(元素).事件方法名1(要执行的功能)

.事件方法名2(要执行的功能);

    //方式二 链式定义   也就是在第一个事件没结束可以直接在后面使用
    $("#div").mouseover(function () {
        $(this).css("background", "red");
    }).mouseout(function () {
        $(this).css("background", "blue");
    });
遍历操作:
  • 方式一:传统方式
for(let i = 0; i < 容器对象长度; i++){
		执行功能;
}
<body>
<input type="button" id="btn" value="遍历列表项">
<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
</ul>
</body>
<script src="jquery-3.3.1.min.js"></script>
<script>
    //方式一:传统方式
    $("#btn").click(function () {
        let lis = $("li");
        for (let i = 0; i < lis.length; i++) {
            alert(i + ":" + lis[i].innerHTML);
        }
    });
</script>
  • 方式二:对象.each()方法
容器对象.each(function(index,ele){
	执行功能;
});
    //方式二:对象.each()方法
    $("#btn").click(function () {
        let lis = $("li");
        lis.each(function (index, ele) {
            alert(index + ":" + ele.innerHTML);
        });
    });
  • 方式三:$.each()方法
$.each(容器对象,function(index,ele){
	执行功能;
});
    //方式三:$.each()方法
    $("#btn").click(function () {
        let lis = $("li");
        $.each(lis, function (index, ele) {
            alert(index + ":" + ele.innerHTML);
        });
    });
  • 方式四:for of语句
for(ele of 容器对象){
	执行功能;
}
    //方式四:for of 语句遍历
    $("#btn").click(function () {
        let lis = $("li");
        for (ele of lis) {
            alert(ele.innerHTML);
        }
    });
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JQuery入门 的相关文章

  • 无法选择或取消选择 jQuery UI 模态对话框中的复选框

    我使用 jQuery UI 的对话框来显示一些选项 每个选项都表示为复选框 现在 当我打开对话框并单击复选框时 没有任何反应 复选框没有被选中 我正在使用 jQuery UI 的最新版本 谁能告诉我出了什么问题吗 这是代码 div atta
  • jQuery stopPropagation 不起作用

    我正在使用以下内容选色器 https github com meta100 mColorPicker blob master javascripts mColorPicker js它工作正常 但是当我单击颜色选择器图标时 我不希望它冒泡到主
  • 使用 parsley.js 支持每个字段多个自定义错误消息

    我正在尝试使用 parsley js 验证一个简单的表单 并且我对 parsley js 非常初学者 我想使用 window ParsleyValidator addValidator 方法在一个自定义验证方法中显示多个错误消息 所以我尝试
  • Jquery 拖放和克隆

    嗨 我需要实现这个 我有一套可掉落的物品 基本上我是在服装上掉落设计 并且我正在掉落一个克隆 如果我不喜欢删除的对象 设计 我想通过执行隐藏之类的操作来删除它 但我无法做到这一点 请帮我 这是代码 var clone document re
  • JavaScript 中的正则表达式用于验证十进制数字

    我想要 JavaScript 中的正则表达式来验证十进制数字 它最多只允许两位小数 例如 它应该允许10 89但不是10 899 它还应该只允许一个句点 例如 它应该允许10 89但不是10 8 9 尝试使用以下表达式 d d 0 2 如果
  • 防止jsTree节点选择

    我正在使用 jsTree 插件列出文件系统中的文件夹 我需要防止用户在满足特定条件之前更改到另一个节点 下面的代码不会停止传播 我看到了一些使用其他插件的解决方案 但这是一个简单的任务 没有其他插件它一定是可能的 jstree on sel
  • JQUERY 中用于加载 JQGRID 的选项卡

    我正在使用 jqgrid 制作网格 我想在我的应用程序中创建选项卡 单击选项卡应打开一个网格 选项卡的名称应显示在页面顶部 当我单击另一个选项卡时 它应该加载另一个网格 网格应该加载在同一页面上 并且选项卡也应该始终出现在页面上 我已经创建
  • jQuery id 选择器在有 .在 ID 中[重复]

    这个问题在这里已经有答案了 我的html代码如下 div class chatbox html markup which is validated div 在上面的代码中dipesh parmardiv 动态添加 我正在使用以下代码访问它
  • 在 ASP.NET MVC 4 中使用 jQuery Mobile 1.3 面板时的双滚动条

    我无法弄清楚这一点 将以下代码放入布局页面并在浏览器中查看后 我将显示 2 个垂直滚动条 div div 遇到了类似的问题 并注意到只有在使用我的自定义主题时才出现这种问题 我以错误的顺序将自定义主题添加到页面 这导致了问题 正确的顺序是
  • jQuery 检索和设置 html select 元素的选定选项值

    我正在尝试使用 jQuery 检索并设置选择元素 下拉列表 的选定值 为了检索我已经尝试过 myId find selected val 也 myId val 但两者都返回未定义 任何对此问题的见解将不胜感激 要获取 设置选择元素的实际 s
  • 将 jQuery 版本从 1.7.1 升级到 1.11.2

    在我当前的应用程序中 我使用的是 jQuery 版本 1 7 1 现在 我计划将jQuery版本升级到1 11 2 是否有任何补丁可以提供与现有应用程序的向后可比性 Thanks 尝试这个 http blog jquery com 2013
  • jqGrid刷新本地数据(JSON对象)

    我正在尝试将 jqGrid 与本地数据一起使用 但发现了几个问题 我正在初始化这样的事情 function refreshGrid grid results grid jqGrid data results datatype local c
  • 此错误消息“insertId: Error: INVALID_ACCESS_ERR: DOM Exception 15”的含义是什么?

    我正在使用 jquery mobile phonegap 和 openDatabase 开发一个应用程序 当应用程序执行时 我可以在 Safari 浏览器的控制台中看到SQL结果集与此消息 insertId Error INVALID AC
  • 是否可以将多个事件处理程序绑定到 JqGrid 事件而不覆盖以前的事件处理程序?

    例如 我在每次页面加载时调用默认设置 并将函数绑定到 loadComplete 来为网格执行一些基本格式化 在某些页面上 我想同时执行其他逻辑 但如果我在网格定义中设置 loadComplete 它将覆盖默认值中设置的函数 有没有办法绑定多
  • JSON 数据中的 jQGrid celledit 显示 URL 未设置警报

    我需要从服务器加载 JSON 并且希望用户能够单击并编辑该值 但是当他们编辑时 它不应该调用服务器 我的意思是我不会立即更新 所以我不想编辑网址 所以我尝试了 ClientArray 但它仍然显示 Url is not set 警报框 但是
  • jQuery,使用 ~ 作为 id 的一部分 - 如何?

    在我的应用程序中 我有一个表单 其中的元素使用特定的约定命名 即它们是路径 其各部分使用 sign 现在我需要通过 id 在 jQuery 中访问其中之一 但失败了 显然 jQuery 将其视为 prev sibling thing 有什么
  • 如何发送正确的授权标头以进行基本身份验证

    我正在尝试从 API 发布数据 但无法通过基本身份验证 I try ajax type POST url http theappurl com api v1 method data crossDomain true beforeSend f
  • 在特定页面上执行 javascript 的正确“Rails”方式

    我试图在特定页面上运行 javascript 而我唯一的解决方案似乎是反模式 我有controller js内部生成的assets javascripts 我在用着gem jquery turbolinks 我的代码类似于以下内容 docu
  • 用于选择特定 div 中具有特定类的锚元素的 jQuery 选择器是什么

    我有一些这样的代码 我想选择每个 a 带有类的标签status在 div 中foo div a class status a div 你可以这样做 foo find status a
  • 测量窗口偏移

    有没有一种方法可以测量 jQuery 中窗口的偏移量 以便我可以比较 固定 元素和相对定位元素的位置 我需要能够知道窗口滚动了多远 以便我可以使用该图来计算固定元素的高度 相对于视口顶部 和相对对象的高度 相对于顶部 之间的差异文件的内容

随机推荐

  • 面试了30多家大厂后,整合出这份1658 页《Java 面试突击核心讲》

    面试神技 主要包含 Java 基础 JVM 多线程 MySQL Spring SpringBoot SpringCloud 分布式 Dubbo Mybatis Redis 网络 Linux MQ Zookeeper Netty 大数据 算法
  • 面试系列之JVM

    说说JVM的内存模型 方法区 存储已被虚拟机加载的类信息 常量 静态变量 即时编译后的代码等数据 堆 存放对象实例 几乎所有的对象实例都要在堆上分配 程序计数器 当前线程所执行的字节码的行号指示器 虚拟机栈 描述的是Java方法执行的内存模
  • Java如何使用dom4j获取,添加,删除,查找,设置Element节点呢?

    转自 Java如何使用dom4j获取 添加 删除 查找 设置Element节点呢 下文笔者讲述DOM4J操作Element节点的示例分享 如下所示 获取文档的根节点 Element rootElm document getRootEleme
  • 'gbk' codec can't decode byte 0x91 in position 2: illegal multibyte sequence的解决

    今天在使用Pycharm运行程序的时候 在对文件进行分割时 出现此问题 当时代码是 f open 对话 txt r 运行就会报错 在上网搜索后发现 原来问题是出现在字符编码上 改成 f open 对话 txt r encoding UTF
  • 程序员大大们,平时都喜欢逛什么技术论坛?

    先安排个工作 再带你学技术 闲来无事戳一戳 有小惊喜 1 CSDN 中国开发者网络 https mp csdn net 中国专业IT社区 为中国软件开发者提供知识传播 在线学习 职业发展等全生命周期服务 2 GitHub 开发者最最最重要的
  • cmd中如何进入某文件目录

    步骤如下 1 按下键盘的 win R 组合键 或者是点击开始菜单中的 运行 选项 来打开运行窗口 然后在打开的运行窗口中输入 CMD 回车 2 然后就打开了CMD命令窗口了 3 如 要进入F盘中的某个目录 则输入 F 回车 然后就进入了F盘
  • Qt 多窗口的调用

    方法一 用于一个父窗口和多个子窗口的处理 不知道怎么用于处理子窗口的子窗口的处理 1 建立一个父窗口 然后建立一个QDialog类型的窗口作为子窗口 2 在父类窗口建立子窗口的对象 void 父类名 on pushButton clicke
  • 红黑树之歌

    译文 我看到一个全新的节点 我想把它涂成黑色 我们需要一棵平衡的树 我们得把它漆成黑色 我想在log n的时间内找到键 就这样 旋转子树可以是一个球 我看到一个全新的节点 我想把它涂成黑色 不能有很多红节点 我们必须把它们涂成黑色 不幸的是
  • TortoiseGit 如何回退到以前的版本?

    要在 TortoiseGit 中回退到以前的版本 可以按照以下步骤进行操作 在资源管理器中 右键单击你的 Git 仓库文件夹 然后选择 TortoiseGit 再选择 Show log 这将打开 TortoiseGit 的日志界面 在日志界
  • 【华为OD】

    华为OD试题注意事项 使用合适的编程语言 在华为OD机试中多数情况下使用C 或Java 按照题目要求进行编码 仔细阅读题目描述并理解要求 在编码前可以进行伪代码编写或画流程图有助于理解和排除逻辑错误 注意代码的规范性 注重代码的可读性和可维
  • 测试架构师的职责及困境

    架构师 架构师来自于建筑学 英文是Architect 建筑工程中的架构师是负责整体建筑的架构设计 因此从宏观上看 软件行业的架构师也类似 是负责整体架构的设计 在软件工程中架构师是一个团队的技术的领头者 主要工作内容除去对项目的整体设计和规
  • redis一主二从时,主中读取不到从的信息

    一 错误情境描述 1 主 6379 2 从1 6380 3 从2 6381 二 错误原因 主中带有密码 三 解决办法 1 将主中配置文件中注释掉代码 2 在从的配置文件中添加主的密码 当master服务设置了密码保护时 slav服务连接ma
  • uniapp--- 微信小程序 用户隐私新规相关代码调整【vue3+ts+uView框架】

    uniapp 微信小程序 用户隐私新规相关代码调整 vue3 ts uView框架 官方公告地址 https developers weixin qq com community develop doc 00042e3ef54940ce85
  • elementUI中的$confirm调换两个按钮的位置

    confirm默认两个按钮的位置为 取消在前 确认在后 而我们在项目中经常要求 确认在前 取消在后 所以需要调换两个按钮的位置 修改后的样式如下图所示 用css样式调换两个按钮的位置 代码如下 给取消按钮添加样式 this confirm
  • 关于取模运算的特点与应用

    对于取模 取余 运算 比如A M 结果永远都是在 0 M 1 之间循环 并且如果A lt M 则结果和没有进行取模运算一样 这一特点有很多应用场景 1 最常见的就是对2取模来判断奇偶数 2 循环队列中通过对最大容量取模来控制数组下标 防止索
  • 资源记录

    AE插件 https zhuanlan zhihu com p 26304609 GLSL内置函数使用 https blog csdn net jeffasd article details 77989274 ops request mis
  • js中forEache()和Map()的区别

    定义剖析 我们首先来看一看MDN上对Map和ForEach的定义 forEach 针对每一个元素执行提供的函数 executes a provided function once for each array element map 创建一
  • 地埋式积水在线监测系统助力城市内涝解决方案

    一 方案背景 随着我国城镇化快速发展 城市建设产生的大量地面硬底化 大部分的降雨将形成地表径流 仅有少量雨水渗入地下 导致城市内涝等一系列问题 当前 全国多地发生洪涝 我国南北方全面进入主汛期 与往年相比 今年的汛期不仅提前4天 而且汛情呈
  • 3.app自动化项目

    app自动化项目 我们可以使用AirtestIDE工具进行脚本的调试 元素的定位等辅助功能 但是真正意义上的脚本 在 AirtestIDE 工具中实现还是比较麻烦 问题 1 如何使用pycharm实现airtest内容脚本 解决方案 如果是
  • JQuery入门

    JQuery jQuery 是一个 JavaScript 库 所谓的库 就是一个 JS 文件 里面封装了很多预定义的函数 比如获取元素 执行隐藏 移动等 目的就 是在使用时直接调用 不需要再重复定义 这样就可以极大地简化了 JavaScri