JavaWeb--jquery篇

概述

jQuery是一个快速、简洁的JavaScript框架,是一个优秀的JavaScript代码库(框架)于2006年1月由John Resig发布。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。

引入jquery文件

<!-- 引入在线路径 -->
<!-- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script> -->
<script src="../jquery/jquery.min.js"></script>jquery.js 是未压缩版
jquery.min.js是压缩版引入的jqery标签的顺序要在你的js之前引入

 优点

  • 访问和操作dom元素更简单; 
  • 控制页面样式更优秀; 
  • 对页面事件处理简单; 
  • 可扩展的jquery插件。 

jquery和js的不同 

jquery是对js的封装,js能做到的jquery不一定能做到,但是jquery能做到的js一定能做到 


 

入口函数

//jquery入口函数$(function(){console.log(jQuery)console.log($)})

入口函数的不同点

  • JavaScript 的入口函数是会等到所有内容,包括外部图片之类的文件加载完后,才执行。
  • jQuery的入口函数会等到全部DOM元素加载完毕,但不会等到图片也加载完毕,就会提前执行。
  •  JS的入口函数如果有多个,后面创建的入口函数会覆盖前面创建的入口函数,说白了就只能有一个入口函数
  • jQuery的入口函数可以有多个,后面创建的入口函数不会覆盖前面的入口函数。

js对象和jquery对象的相互转换

 //获取js对象let jsBox =  document.getElementsByClassName('box')[0];console.log(jsBox)// jsBox.addEventListener()//获取jquery对象console.log(  $('.box'))//js对象和jquery对象的方法是不能公用的// $('.box').addEventListener('click',function(){//     console.log(123)// })//js对象和jquery对象之间的相互转换// js对象转 jquery对象$(jsBox).css('color','red')//jquery转js对象//  通过[索引] 或者 get(索引)的方式$('.box').get(0).addEventListener('click',function(){console.log('被点击了')})

jquery选择器 

 

 

过滤选择器

 

 表单过滤选择器

 

操作内容

修改样式 

 

操作类名 

 

jquery控制元素显示和隐藏

jquery事件

$().on(事件, 子对象,data 
) 
// 其中 子对象可写可不写;// 事件: 使用最常用的map键值对的方式进行编写: 
$().on( 
{ '事件类型':function(){}, '事件类型':function(){} } 
)$().off('被移除的事件'); // $('div').on({//         'click': function (e) {//             console.log('单机事件')//             console.log($(e.currentTarget).attr('index'))//         },//         'dblclick':function(){//             console.log('双机事件')//         },//         'mouseover':function(){//             console.log('划入事件')//         }//     }// )$('body').on('click','div',function(){console.log(123)})

jquery遍历方式

 $('ul>li').each(function(i,e){//i 索引//e 当前的元素console.log(i,e)})

操作节点

 

 $('button:eq(1)').on('click',function(){//清空后代元素$('ul').empty();})$('button:eq(2)').on('click',function(){//删除元素$('ul').remove();})

 代码实现

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script src="../jquery/jquery.js"></script>
</head><body><button>添加</button><button>empty</button><button>remove</button><button>查询父元素</button><button>查询子元素</button><button>查询后代元素</button><button>返回除自已以外的所有兄弟元素</button><button>返回下一个兄弟元素</button><button>返回后面所有的兄弟元素</button><ul><li class="one"><span>456</span></li></ul></body>
<script>$(function () {$('button:eq(0)').on('click', function () {//创建节点let li = document.createElement('li');$(li).text('我是li')//将 li节点 添加到ul中//父元将将子元素添加到末尾; $('ul').append(li)//父元将将子元素添加到开头; // $('ul').prepend(li)//把a追加到b的内部,位置位于b的结尾; // $(li).appendTo($('ul').get(0))// $(li).prependTo($('ul').get(0))//将元素添加到此元素的后面// $('.one').after(li)//将元素添加到此元素的前面// $('.one').before(li)})$('button:eq(1)').on('click', function () {//清空后代元素$('ul').empty();})$('button:eq(2)').on('click', function () {//删除元素$('ul').remove();})$('button:eq(3)').on('click', function () {//查询父元素console.log($('ul').parent());})$('button:eq(4)').on('click', function () {//查询子元素console.log($('ul').children());})$('button:eq(5)').on('click', function () {//查询后代元素console.log($('ul').find('*'));})$('button:eq(6)').on('click', function () {//查询除自己所有的兄弟元素console.log($('.one').siblings());})$('button:eq(7)').on('click', function () {//查询下一个兄弟元素console.log($('.one').next());})$('button:eq(8)').on('click', function () {//获取之后所有的兄弟元素console.log($('.one').nextAll());})})</script></html>

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/41870.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2229:Sumsets

网址如下&#xff1a; OpenJudge - 2229:Sumsets 这题不是我想出来的 在这里仅做记录 代码如下&#xff1a; #include<iostream> using namespace std;const int N 1000000000; int dp[1000010]; int n;int main() {cin >> n;dp[0] 1;dp[1] 1;for (int i 2…

前端面试题7(单点登录)

如何实现单点登录 单点登录&#xff08;Single Sign-On&#xff0c;简称SSO&#xff09;是一种允许用户在多个应用系统中只需登录一次&#xff0c;就可以访问所有相互信任的应用系统的认证技术。实现前端单点登录主要依赖于后端的支持和一些特定的协议&#xff0c;如OAuth、Ope…

无法下载cuda

cuda下载不了 一、台式机电脑浏览器打不开cuda下载下面二、解决办法 一、台式机电脑浏览器打不开cuda下载下面 用360、chrome、Edge浏览器都打不开下载页面&#xff0c;有的人说后缀com改成cn&#xff0c;都不行。知乎上说是网络问题&#xff0c;电信换成换成移动/联通的网络会…

Selenium 切换 frame/iframe

环境&#xff1a; Python 3.8 selenium3.141.0 urllib31.26.19说明&#xff1a; driver.switch_to.frame() # 将当前定位的主体切换为frame/iframe表单的内嵌页面中 driver.switch_to.default_content() # 跳回最外层的页面# 判断元素是否在 frame/ifame 中 # 126 邮箱为例 # …

无人机云台类型及作用

无人机云台主要分为三种类型&#xff1a; 单轴云台&#xff1a;仅支持单向旋转&#xff0c;适合拍摄平滑的延时摄影和全景照片。 双轴云台&#xff1a;支持水平和垂直旋转&#xff0c;可用于拍摄流畅的视频和运动物体。 三轴云台&#xff1a;全面支持所有旋转轴&#xff0c;…

医院陪诊系统开发的关键技术与挑战

随着医疗服务需求的不断提升&#xff0c;传统的医院服务模式面临着巨大的压力和挑战。为了提升患者的就医体验和医疗服务的效率&#xff0c;医院陪诊系统应运而生。本文将探讨医院陪诊系统开发的关键技术与挑战&#xff0c;并结合具体的技术代码进行分析。 一、医院陪诊系统的…

什么是可定制的锂电池?它的应用范围有哪些?

锂电池在新能源汽车领域已经得到了广泛的应用。然而&#xff0c;随着科技的不断进步和人们对于个性化需求的日益增长&#xff0c;可定制的锂电池逐渐成为了市场的新宠。那么&#xff0c;究竟什么是可定制的锂电池&#xff1f;它与普通锂电池有何不同&#xff1f;它的应用范围又…

android——设计模式(工厂模式)

一、工厂模式 Android 设计模式中的工厂模式是一种创建型设计模式&#xff0c;它提供了一种创建对象的最佳方式&#xff0c;而不必暴露其内部的创建逻辑。在Android中&#xff0c;工厂模式通常用于管理复杂组件实例化的过程&#xff0c;比如创建各种View、Activity、Fragment等…

Docker实战教程(二)

文章目录 基于Docker的微服务架构案例一、准备工作二、服务定义1. 用户服务(User Service)2. 订单服务(Order Service)3. 前端服务(Frontend Service)三、Docker Compose文件四、启动微服务架构五、常见问题和解决方案六、总结基于Docker的微服务架构案例 在本案例中,我…

悠律凝声环开放式耳机强者现身:集颜值和创新技术于一体的杰作

随着技术的飞速发展&#xff0c;蓝牙耳机已经成为人们生活中不可缺少的一环&#xff0c;外观、音质以及实用性已经成为人们在购买时最主要的考虑因素。悠律凝声环RingBuds Pro开放式蓝牙耳机&#xff0c;凭借其特有的轻奢时尚外观&#xff0c;斩获2024年度MUSE缪斯创意奖金奖&a…

Android SeekBar设置指示器标签,使用PopupWindow的方式

给Android 原生的SeekBar控件添加一个指示器标签&#xff1b;记录一下 按下时弹出popupwindow&#xff0c;进度条更新时刷新pw&#xff0c;松开时关闭pw&#xff1b; public class SeekBarPopUtils {private static PopupWindow popWin null;private static ConstraintLayou…

Kotlin协程使用详解

协程是什么 协程是一种编程思想,并不局限于特定的语言。协程是轻量级的线程,基于线程池API,通俗的来说,就是官方提供的线程框架。协程的调度完全由用户控制。协程拥有自己的寄存器上下文和栈。当我们在了解协程的时候,不可避免的会跟线程、进程作比较作分析,下面来贴个图…

数据可视化之智慧城市的脉动与洞察

在数字化转型的浪潮中,城市作为社会经济发展的核心单元,正经历着前所未有的变革。城市数据可视化大屏看板作为这一变革中的重要工具,不仅极大地提升了城市管理效率,还为公众提供了直观、全面的城市运行状态视图,成为智慧城市建设不可或缺的一部分。本文将深入探讨以“城市…

ruoyi后台修改

一、日志文件过大分包 \ruoyi-admin\src\main\resources\logback.xml <!-- 系统日志输出 --> <appender name"file_info" class"ch.qos.logback.core.rolling.RollingFileAppender"><file>${log.path}/sys-info.log</file><!…

网安小贴士(9)网络解密

一、前言 网络解密技术的发展是一个不断进化的过程&#xff0c;它与加密技术的进展紧密相连。 二、定义 网络解密&#xff08;Network Decryption&#xff09;通常指的是在计算机网络环境中&#xff0c;将加密的数据转换回其原始可读格式的过程。这个过程需要使用正确的密钥…

0701_ARM5

练习&#xff1a;使用usart4 main.c #include "uart4.h"int main() {// 初始化 UART4hal_uart4_init();while (1) {// 发送一个字符串//hal_put_char( hal_get_char());hal_put_string(hal_get_string());}return 0; } usart4.c #include "uart4.h"//**…

ctfshow-web入门-文件包含(web88、web116、web117)

目录 1、web88 2、web116 3、web117 1、web88 没有过滤冒号 : &#xff0c;可以使用 data 协议&#xff0c;但是过滤了括号和等号&#xff0c;因此需要编码绕过一下。 这里有点问题&#xff0c;我 (ls) 后加上分号发现不行&#xff0c;可能是编码结果有加号&#xff0c;题目…

Spark MLLib面试题你会几道?(万字长文)

目录 简述Spark MLLib的主要组件及其功能 Spark MLLib支持哪些机器学习算法? 解释RDD(弹性分布式数据集)的概念及其在MLLib中的作用 在Spark MLLib中,LabeledPoint是什么?如何使用它? 描述DataFrame和Dataset API在Spark MLLib中的重要性 什么是ML Pipeline?它解决…

【反悔堆 优先队列 临项交换 决策包容性】630. 课程表 III

本文涉及知识点 贪心 反悔堆 优先队列 临项交换 Leetcode630. 课程表 III 这里有 n 门不同的在线课程&#xff0c;按从 1 到 n 编号。给你一个数组 courses &#xff0c;其中 courses[i] [durationi, lastDayi] 表示第 i 门课将会 持续 上 durationi 天课&#xff0c;并且必…

WordPress网站违法关键词字过滤插件下载text-filter

插件下载地址&#xff1a;https://www.wpadmin.cn/2025.html 插件介绍 WordPress网站违法关键词字过滤插件text-filter由本站原创开发,支持中英文关键字自动替换成**号&#xff0c;可以通过自定义保存修改按钮增加“预设关键字”&#xff0c;也可以导入定义好的txt文本形式的关…