2、事件机制、DOM操作、jquery对尺寸操作、jquery添加和删除

一、事件机制

1、事件源.事件类型(事件处理程序)

$(this)中的this不能加引号

$('#box').click(function () {$(this).css('background-color','blue')//点击颜色变为蓝色
})

2、事件源.on/bind(事件类型,事件处理程序)

$("#box").on('dbclick',function () {$(this).css('border-radius','100px')
})
$('#box').bind('mouseover',function () {$(this).csss('font-size','60px')
})

3、事件源.on/bind({事件类型1:事件处理程序1,事件类型2:事件处理程序2,})

$('#box').on({ //用on或bindmousedown: function () {//按下鼠标console.log("鼠标按下了")},mouseup: function () {//抬起鼠标console.log("鼠标抬起了")}
})

区别.on()与.bind():

  • 与 .bind() 不同的是,.on() 方法可以附加额外的参数,如可选的选择器,用于对事件目标进行过滤。这样,您可以只在满足选择器条件的元素上触发事件处理程序。

4、事件对象

event不用考虑兼容性 输出必须要event.属性

$("#box").on({mouseenter: function () {
//MouseEvent {isTrusted: true, screenX: 168, screenY: 178, clientX: 127 …}console.log(event)console.log('pageX:' + event.pageX)//距离浏览器左边的横坐标 包括滚动条卷去的console.log('clientX:' + event.clientX)//距离浏览器左边的横坐标},
})
$('#user').bind('keyup', function () {console.log(event);//如果按下enter就跳转页面if(event.keyCode == 13 && event.key == 'Enter') {window.location.href = "https://www.***.com"}
})

5、each() 函数用于遍历的对象和数组。

$('#btn').click(function () {console.log($("ul>li"));$('ul>li').each(function () {console.log($(this).text()// 输出每个列表项的文本内容})
})
image-20240302163458915

6、jQuery.each(数组/对象,回调函数(key,value)) 遍历数组或者对象

遍历数组

var arr = ['web', '前端']
//遍历数组   key  value也可以
$.each(arr, function (index, item) {
//数组的索引是0,值是web 数组的索引是1,值是前端 console.log('数组的索引是' + index + ',值是' + item)
})

遍历对象

var obj = { name: "小明", age: 20, sex: "男" }
$.each(obj, function (index, item) {
//属性名:name,属性值:小明  属性名:age,属性值:20  属性名:sex,属性值:男console.log("属性名:" + index + ",属性值:" + item)
})

二、DOM操作

1、 html()获取或设置被选元素的所有节点

  • 相当于innerHTML
console.log($('#box').html());
//<p>哈哈哈</p>   <!-- 我是注释 -->  都可以获取到
$("#btn").on('click',function(){$("#box").html("<a>我是超链接</a><!-- 我是注释的升级版 -->")
})

image-20240302165555873

2、text()设置或返回所选元素的内容

  • 相当于innerText
console.log($('#box').text())//返回内容
$('#btn').bind('mouseover', function () {$('#box').text('段落标签')//改变内容为段落标签
})

3、val()设置或返回表单字段的值

<input type="text" id="user" value="我是输入框的文本">
console.log($('#user').val())//返回 我是输入框的文本
$('#user').on({click: function () {$(this).val('web31')//点击以后  值变为 web31}
})

4、attr()prop()获取或者设置被选元素的属性,参数是属性名和属性值

区别1:

  • attr() 不仅可以获取和设置元素的本身属性和设置元素的自定义属性
  • prop()只能设置元素的本身属性

区别2:

  • 表单中的一些属性disabled/selected/checked用prop()
<p class="text" name_1="proName">我是盒子box中的段落文本text</p>
console.log($('.text').attr('class')) //text  获取类名为text的class为
console.log($('.text').prop('class')) //text  获取类名为text的class为
//proName  获取类名为text的name_1为 
console.log($('.text').attr('name_1'))//proName
console.log($('.text').prop('name_1')) //undefined  prop不能获取自定义属性
$('#btnSet').click(function () {console.log($(this).attr('disabled')) //undefined 表单中的不能用attrconsole.log($(this).prop('disabled'))//flase
})

三、jquery对尺寸操作

1、width()height()方法

  • 设置或返回元素的宽度高度
  • 相当于 style.width()
    元素本身大小
console.log($('#child').width())//返回元素的宽度
console.log($('#child').height())
$('button').click(function () {$('#child').width('400px')//点击以后 将元素的宽度改为400px$('#child').height('300px')
})

2、innerWidth()innerHeight()

  • 相当于clientWidth() / clientHeight()
    元素本身 + padding
console.log($('#child').innerWidth())
console.log($('#child').innerHeight())

3、outerWidth()outerHeight()

  • 相当于offsetWidth offsetHeight
    元素本身 + padding + border
console.log($('#child').outerWidth())
console.log($('#child').outerHeight())

4、scrollTop()scrollLeft()

  • 方法设置或者返回滚动条被卷去的元素的高度
  • scrollLeft() 方法设置或者返回滚动条被卷去的元素的宽度
$(window).scroll(function () {
// console.log($(window).scrollTop())
console.log($(window).scrollLeft())
})
$('#set').click(function () {$(window).scrollTop(600)//点击按钮  滚动条卷去600px
})

四、jQuery添加和删除元素

1、append() 结尾插入(选择的元素内部)

$("#add").click(function () {console.log($("#parent").append("<li>我是添加的元素</li>"));
})

image-20240302184220947

2、prepend() 开头插入(选择的元素内部)

$("#add").click(function () {console.log($("#parent").prepend("<li>我是添加的元素</li>"));
})

image-20240302184327646

3、after() 之后插入 (该元素的外面)

$("#add").click(function () {console.log($("#parent").after("<li>我是添加的元素</li>"));
})

image-20240302184421427

4、before() 之前插入 (该元素的外面)

$("#add").click(function () {console.log($("#parent").before("<li>我是添加的元素</li>"));
})

image-20240302184507756

5、remove() 删除元素 (包括自己)

  • 删除自己和自己的子元素
  • 删除以后不占位置
$("#add").click(function () {console.log($("#parent").remove());
})

6、empty() 删除元素(自己本身不删除)

  • 删除自己的子元素
  • 自己本身不删除
$("#add").click(function () {console.log($("#parent").empty());
})//parent不删除  里面的都删除

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

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

相关文章

适配器模式在微服务的巧妙应用

适配器模式&#xff08;Adapter Pattern&#xff09;是一种结构型设计模式&#xff0c;它允许不兼容的接口之间可以一起工作。适配器模式通常用于将一个类的接口转换成客户端期望的另一种接口&#xff0c;从而使原本因接口不兼容而不能一起工作的类可以一起工作。 适配器模式的…

使用Haproxy搭建Web群集

Hapraxy是目前比较流行的一种群集调度工具&#xff0c;同类群集调度工具有很多&#xff0c;如LVS 和Nginx。相 比较而言&#xff0c;LVS.性能最好&#xff0c;但是搭建相对复杂:Nginx的 upstream 模块支持群集功能&#xff0c;但是对群集节 点健康检查功能不强&#xff0c;性能…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的番茄成熟度检测系统(Python+PySide6界面+训练代码)

摘要&#xff1a;开发番茄成熟度检测系统对于提高农业产量和食品加工效率具有重大意义。本篇博客详细介绍了如何利用深度学习构建一个番茄成熟度检测系统&#xff0c;并提供了完整的实现代码。该系统基于强大的YOLOv8算法&#xff0c;并结合了YOLOv7、YOLOv6、YOLOv5的对比&…

腾讯云幻兽帕鲁服务器使用Linux和Windows操作系统,对用户的技术要求有何不同?

腾讯云幻兽帕鲁服务器使用Linux和Windows操作系统对用户的技术要求有何不同&#xff1f; 首先&#xff0c;从操作界面的角度来看&#xff0c;Windows操作系统相对简单易操作&#xff0c;适合那些偏好使用图形化界面操作的用户。而Linux操作系统则需要通过命令行完成&#xff0…

百度搜索引擎SEO优化方法

随着互联网的不断发展&#xff0c;搜索引擎已经成为人们获取信息、产品和服务的主要途径之一。而在中国&#xff0c;百度作为最大的搜索引擎&#xff0c;其影响力不可忽视。了解并掌握百度SEO关键词优化方法&#xff0c;对于提升网站在搜索引擎中的排名至关重要。 关键词选择&a…

数据结构——跳表

简单介绍跳表 跳表&#xff08;Skip List&#xff09;是一种可以进行对数级别查找的数据结构&#xff0c;它通过在数据中构建多级索引来提高查询效率。跳表是一种基于链表的随机化数据结构&#xff0c;其本质是由多个链表组成&#xff0c;每个链表中的元素都是原始链表中的元素…

图论 - Trie树(字符串统计、最大异或对)

文章目录 前言Part 1&#xff1a;Trie字符串统计1.题目描述输入格式输出格式数据范围输入样例输出样例 2.算法 Part 2&#xff1a;最大异或对1.题目描述输入格式输出格式数据范围输入样例输出样例 2.算法 前言 本篇博客将介绍Trie树的常见应用&#xff0c;包括&#xff1a;Trie…

电子电气架构——车载以太网协议栈

电子电气架构——车载以太网协议栈 我是穿拖鞋的汉子&#xff0c;魔都中坚持长期主义的汽车电子工程师。 老规矩&#xff0c;分享一段喜欢的文字&#xff0c;避免自己成为高知识低文化的工程师&#xff1a; 没有人关注你。也无需有人关注你。你必须承认自己的价值&#xff0c…

MySQL入门------数据库与SQL概述

目录 前言 一、数据库相关概念 二、数据模型 1.关系型数据库&#xff08;RDBMS&#xff09; 三、MySQL数据库 1.下载和安装 2.配置环境变量 四、SQL 1.SQL通用语法 2.SQL分类 前言 从本期开始&#xff0c;我们开始学习数据库的相关理论和实践知识&#xff0c;从入门…

jupyter 用pyecharts进行数据分析

一、jupyter和pyecharts下载和打开 因为我是用的pycharm&#xff0c;所以我直接在pycharm项目终端中下载pip install jupyter,pip install pyecharts 在你下载的项目路径中输入jupyter notebook 之后会进入页面 Jupyter 具体使用参考这个链接&#xff1a;Jupyter Notebook基本…

Pygame教程01:初识pygame游戏模块

Pygame是一个用于创建基本的2D游戏和图形应用程序。它提供了一套丰富的工具&#xff0c;让开发者能够轻松地创建游戏和其他图形应用程序。Pygame 支持许多功能&#xff0c;包括图像和声音处理、事件处理、碰撞检测、字体渲染等。 Pygame 是在 SDL&#xff08;Simple DirectMed…

常用设计模式详解

设计模式 1.UML图 统一建模语言是用来设计软件的可视化建模语言。定义了用例图、类图、对象图、状态图、活动图、时序图、协作图、构件图、部署图等 9 种图。 1.1类图 1.1.1类的表示方式 在UML类图中&#xff0c;类使用包含类名、属性(field) 和方法(method) 且带有分割线…

Java基于springboot的厨艺交流平台的设计与实现代码

摘 要 使用旧方法对厨艺交流信息进行系统化管理已经不再让人们信赖了&#xff0c;把现在的网络信息技术运用在厨艺交流信息的管理上面可以解决许多信息管理上面的难题&#xff0c;比如处理数据时间很长&#xff0c;数据存在错误不能及时纠正等问题。 这次开发的厨艺交流平台功…

Redis的主从搭建

1.准备两台机器&#xff0c;安装好redis 2.修改从服务器的redis配置 slaveof <masterip> <masterport>两个参数 masterip 主的ip 主的端口号 masterport 3. 启动redis 1.先启动主机redis 2.再启用从机redis 主机redis日志打印 从机redis 日志打印

【python】1.python3.12.2和pycharm社区版的安装指南

欢迎来CILMY23的博客喔&#xff0c;本篇为【python】1.python3.12.2和pycharm社区版的安装指南&#xff0c;感谢观看&#xff0c;支持的可以给个一键三连&#xff0c;点赞关注收藏。 目录 一、python3.12.2的下载与安装 1.1下载 1.2安装 二、pycharm的安装 2.1下载安装 2…

Bootstrap的使用

目录 js的引入&#xff1a; 1.行内式 2.嵌入式 3.外链式 Bootstrap:的引入 注意事项&#xff1a; 条件注释语句&#xff1a; 栅格系统&#xff1a; 列嵌套&#xff1a; 列偏移&#xff1a; 列排序&#xff1a; 响应式工具&#xff1a; Bootstrap的字体图标的使用&a…

2024最新算法:河马优化算法(Hippopotamus optimization algorithm,HO)求解23个基准函数,提供MATLAB代码

一、河马优化算法 河马优化算法&#xff08;Hippopotamus optimization algorithm&#xff0c;HO&#xff09;由Amiri等人于2024年提出&#xff0c;该算法模拟了河马在河流或池塘中的位置更新、针对捕食者的防御策略以及规避方法。河马优化算法的灵感来自河马生活中观察到的三…

【测试工具】Fiddler

1.Fiddler简介 Fiddler是位于客户端和服务器端的HTTP代理&#xff0c;能够记录客户端和服务器之间的所有 HTTP请求&#xff0c;是web调试的利器。既然是代理&#xff0c;也就是说&#xff1a;客户端的所有请求都要先经过Fiddler&#xff0c;然后转发到相应的服务器&#xff0c…

day02-JavaScript-Vue

文章目录 1 JavaScript1.1 介绍 1.2 引入方式1.3 基础语法1.3.1 书写语法1.3.2 变量1.3.3 数据类型和运算符 1.4 函数1.4.1 第一种定义格式1.4.2 第二种定义格式 1.5 JavaScript对象1.5.1 基本对象1.5.1.1 Array对象语法格式特点属性和方法 1.5.1.2 String对象语法格式属性和方…

17.来自Sora的夺舍妄想——享元模式详解

OpenAI 的 Sora 模型面世之后&#xff0c;可以说人类抵御AI的最后阵地也沦陷了。 在此之前&#xff0c;人们面对AI交互式对话&#xff0c;AI制图&#xff0c;AI建模之类的奇迹时&#xff0c;还可以略微放肆的说&#xff1a;“的确很神奇&#xff0c;这毕竟还是比人类世界低了一…