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

JavaWeb1 Json+BOM+DOM+事件监听

JS对象-Json

//Json 字符串转JS对象
var jsObject  = Json.parse(userStr);
//JS对象转JSON字符串
var jsonStr = JSON.stringify(jsObject);

JS对象-BOM

BOM是浏览器对象模型,允许JS与浏览器对话
它包括5个对象:window、document、navigator、screen、history
常用方法:

alert():弹出一个警告框,用于提示用户。

window.alert("hello");

confirm():弹出一个确认框,用于确认或取消某个操作。
prompt():弹出一个输入框,用于用户输入一些内容。
setTimeout():在指定的毫秒数后执行一次指定的函数或一段代码。
setInterval():每隔指定的毫秒数重复执行一次指定的函数或一段代码。

location

window.location.属性(其中window可以省略)

location.href//获得地址

DOM对象

文档对象模型
将标记语言的各个 组成部分封装为对应的对象:
在这里插入图片描述

getElementById():根据id属性获取一个元素节点。
getElementsByClassName():根据class属性获取一组元素节点。
getElementsByTagName():根据标签名获取一组元素节点。
querySelector():根据CSS选择器获取一个元素节点。
querySelectorAll():根据CSS选择器获取一组元素节点。

<!-- HTML代码 -->
<ul id="list"><li class="item">第一项</li><li class="item">第二项</li><li class="item">第三项</li>
</ul>
// 根据id获取元素
var list = document.getElementById('list');
console.log(list);// 根据class获取元素
var items = document.getElementsByClassName('item');
console.log(items);// 根据标签名获取元素
var lis = document.getElementsByTagName('li');
console.log(lis);// 根据CSS选择器获取元素
var firstItem = document.querySelector('.item');
console.log(firstItem);var allItems = document.querySelectorAll('.item');
console.log(allItems);

JS事件监听

1.通过HTML标签中的事件属性绑定

<button id="myButton" onclick="on()">点击我</button>
function on(){alert("点了");
}

2.通过DOM属性绑定

<button id="myButton">点击我</button>

(1) -> 语法 事件源.on事件类型 = 事件处理函数
-> 特点 同一个事件源的同一个事件类型只能绑定一个事件处理函数
(2) -> 语法 事件源.addEventListener(‘事件类型’, 事件处理函数)
-> 特点 可以个同一个事件源的同一个事件类型绑定多个事件处理函数,会按照顺序依次触发

// 获取按钮元素
var button = document.getElementById('myButton');
//语法(1)button.onclick=function(){console.log("点了");}
// 语法(2)为按钮绑定点击事件
button.addEventListener('click', function() {alert('按钮被点击了!');
});
常见事件

JS事件绑定 各种事件讲解见:https://blog.csdn.net/huangwfu/article/details/128554495
常见的事件类型

  1. 鼠标事件
    click 鼠标左键点击
    dblclick 鼠标左键双击
    contextmenu 鼠标右键单击
    mousedown 鼠标按下
    mouseup 鼠标抬起
    mousemove 鼠标移动
    mouseover 鼠标移入
    mouseout 鼠标移出
    mouseenter 鼠标移入事件
    mouseleave 鼠标离开
  2. 键盘事件
    keydown 键盘按下事件
    keyup 键盘抬起
    keypress 键盘键入事件
    。。。

相关文章:

JavaWeb1 Json+BOM+DOM+事件监听

JS对象-Json //Json 字符串转JS对象 var jsObject Json.parse(userStr); //JS对象转JSON字符串 var jsonStr JSON.stringify(jsObject);JS对象-BOM BOM是浏览器对象模型&#xff0c;允许JS与浏览器对话 它包括5个对象&#xff1a;window、document、navigator、screen、hi…...

DSP6657 GPIO中断学习(只支持GPIO0-15)

1 简介 使用创龙板卡的KEY2按键通过中断的方式控制LED3的亮灭 2 中断学习 在C665x设备上&#xff0c;CPU中断是通过C66x CorePac中断控制器进行配置的。该中断控制器允许最多128个系统事件被编程到任意12个CPU可屏蔽中断输入&#xff08;CPUINT4至CPUINT15&#xff09;、CPU…...

vue数字翻盘,翻转效果

数字翻转的效果 实现数字翻转的效果上面为出来的样子 下面为代码&#xff0c;使用的时候直接引入&#xff0c;还有就是把图片的路径自己换成自己或者先用颜色替代&#xff0c;传入num和numlength即可 <template><div v-for"(item, index) in processedNums&quo…...

【简单讲解TalkingData的数据统计】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…...

JMeter的基本使用

JMeter的基本使用三步骤&#xff1a;1.添加线程、2.添加请求、3.添加查询结果的内容 如果需要添加token请求头来验证&#xff0c;则需要再加上一步骤&#xff1a;添加请求头 1.线程 添加线程的方式 主要修改者三个属性值 Number of Threads&#xff1a;并发线程数 Ramp-up…...

Oracle和Random Oracle

Oracle和Random Oracle 在计算机理论里面经常可以看到oracle&#xff0c;这个oracle可以是一个程序 一片代码 一个算法 一个机器 也可以是一个函数 甚至是一个关系。但我们只能知道这个oracle能做什么&#xff0c;不清楚他是怎么做的。所以经常讲其称为黑箱。推广一点&#xf…...

word 无法自动检测拼写

word 有时候不能分辨是哪种语言,比如把英语错认为法语 。 例如&#xff1a;Interlaayer spacace,发现误认为是法语。 1、选中Interlaayer spacace 2、点击语言下拉按钮 选择设置校对语言 发现校对语言为法语 3、手动修改校对语言为英语&#xff0c;并点击确认。 4、发现现…...

docker和docker-compose的安装

docker的安装 1.安装 curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun2.设置开机自启动 systemctl start docker #启动docker systemctl enable docker3.配置阿里云镜像 不配置镜像的话&#xff0c;进行 docker pull 等操作会比较慢。进入阿里云&…...

python的一种集成开发工具:PyCharm开发工具

一. 简介 本文简单了解两种 python语言所使用的 集成开发环境&#xff1a; PyCharm、vscode。 python语言学习中&#xff0c;可以任意选中这两个集成开发环境的一种就可以。本文先来简单学习 PyCharm开发工具安装与使用。 二. python的一种集成开发工具&#xff1a;PyChar…...

【匹配线段问题】

问题&#xff1a; 如下图所示。图中有两行正整数&#xff0c;每行中有若干个正整数。如果第一行的某个数r与第二行的某个数相同&#xff0c;这样就可以在这两个正整数之间划一条线&#xff0c;并称之为r-匹配线段。下图中存在3-匹配线段和2-匹配线段。 请编写完整程序&#xf…...

vue中$bus.$emit和$bus.$on的用法温故

$bus. $emit、 $bus. $on 用于非父子组件之间通信 1、在main.js中注册 Vue.prototype.$bus new Vue();new Vue({render: h > h(App),router,store }).$mount(#app)2、在需要发送信息的组件中&#xff0c;发送事件 this.$bus.$emit("method",params)&#xff1b…...

【JavaScript脚本宇宙】优化你的React项目:探索表单库的世界

React表单库解析&#xff1a;特性&#xff0c;使用方法和使用场景 前言 在现代的web开发中&#xff0c;表单是Web应用程序的核心组成部分之一。为了助力开发者更快捷、高效地处理表单状态和验证等问题&#xff0c;本文将介绍六种不同的React表单库&#xff0c;包括它们的特性…...

kvm虚拟化

虚拟化是一种资源管理技术&#xff0c;是将计算机的各种资源&#xff0c;如服务器&#xff0c;网络&#xff0c;内存及存储等&#xff0c;以抽象&#xff0c;转换后呈现出来&#xff0c;打破物理设备结构见的不可切割的障碍&#xff0c;使用户可以比原来的架构更好的方式来应用…...

算法训练营第五十天 | LeetCode 198 打家劫舍、LeetCode 213 打家劫舍II、LeetCode 337 打家劫舍III

LeetCode 198 打家劫舍 代码如下&#xff1a; class Solution { public:int rob(vector<int>& nums) {vector<int> dp(nums.size() 1, 0);dp[1] nums[0];for (int i 2; i < nums.size(); i) {dp[i] max(dp[i - 1] ,dp[i - 2] nums[i - 1]);}return dp…...

linux学习:进程通信 管道

目录 例子1 父进程向子进程发送一条消息&#xff0c;子进程读取这条消息 例子2 mkfifo 函数创建一个命名管道 例子3 mkfifo 函数创建一个命名管道处理可能出现的错误 例子4 管道文件是否已存在 例子5 除了“文件已存在”进行处理 例子6 创建一个命名管道&…...

重大变化,2024软考!

根据官方发布的2024年度计算机技术与软件专业技术资格&#xff08;水平&#xff09;考试安排&#xff0c;2024年软考上、下半年开考科目有着巨大变化&#xff0c;我为大家整理了相关信息&#xff0c;大家可以看看&#xff01; &#x1f3af;2024年上半年&#xff1a;5月25日&am…...

DRIVEN|15分的CNN+LightGBM怎么做特征分类,适用于转录组

说在前面 今天分享一篇做深度学习模型的文章&#xff0c;这是一篇软硬结合的研究&#xff0c;排除转换实体产品&#xff0c;我们做生信基础研究的可以学习模仿这个算法&#xff0c;适用且不局限于临床资料&#xff0c;转录组数据&#xff0c;GWAS数据。 今天给大家分享的一篇文…...

react 怎样配置ant design Pro 路由?

Ant Design Pro 是基于 umi 和 dva 的框架&#xff0c;umi 已经预置了路由功能&#xff0c;只需要在 config/router.config.js 中添加路由信息即可。 例如&#xff0c;假设你需要为 HelloWorld 组件创建一个路由&#xff0c;你可以将以下代码添加到 config/router.config.js 中…...

DBSCAN 算法【python,机器学习,算法】

DBSCAN 即 Density of Based Spatial Clustering of Applications with Noise&#xff0c;带噪声的基于空间密度聚类算法。 算法步骤&#xff1a; 初始化&#xff1a; 首先&#xff0c;为每个数据点分配一个初始聚类标签&#xff0c;这里设为0&#xff0c;表示该点尚未被分配…...

MySQL之查询性能优化(六)

查询性能优化 查询优化器 9.等值传播 如果两个列的值通过等式关联&#xff0c;那么MySQL能够把其中一个列的WHERE条件传递到另一列上。例如&#xff0c;我们看下面的查询: mysql> SELECT film.film_id FROM film-> INNER JOIN film_actor USING(film_id)-> WHERE f…...

运算放大器基础:从符号到负反馈的实战解析

1. 运算放大器基础认知 第一次接触运算放大器时&#xff0c;我盯着电路板上那个小小的三角形符号发愣——这玩意儿凭什么能同时处理比较和放大两种任务&#xff1f;后来才发现&#xff0c;它的强大之处恰恰藏在最简单的符号里。运放的符号主体是个三角形&#xff0c;五个关键引…...

LAN Chat Room:如何在没有互联网的环境中实现高效局域网通讯?

LAN Chat Room&#xff1a;如何在没有互联网的环境中实现高效局域网通讯&#xff1f; 【免费下载链接】LAN-Chat-Room &#x1f609;基于QT开发的局域网聊天室 项目地址: https://gitcode.com/gh_mirrors/la/LAN-Chat-Room 在当今高度依赖互联网的通讯环境中&#xff0c…...

科研论文翻译难题?试试MathTranslate的公式无损转换方案

科研论文翻译难题&#xff1f;试试MathTranslate的公式无损转换方案 【免费下载链接】MathTranslate translate scientific papers in latex, especially arxiv papers 项目地址: https://gitcode.com/gh_mirrors/ma/MathTranslate 学术研究中&#xff0c;英文文献阅读往…...

从原生UI到插件化框架:RAGENativeUI在GTA模组开发中的架构重构

从原生UI到插件化框架&#xff1a;RAGENativeUI在GTA模组开发中的架构重构 【免费下载链接】RAGENativeUI 项目地址: https://gitcode.com/gh_mirrors/ra/RAGENativeUI 在Grand Theft Auto V模组开发领域&#xff0c;界面系统长期面临着原生集成度低、性能开销大、开发…...

VutronMusic:重新定义跨平台音乐体验的全能播放器

VutronMusic&#xff1a;重新定义跨平台音乐体验的全能播放器 【免费下载链接】VutronMusic 高颜值的第三方网易云播放器&#xff1b;支持流媒体音乐&#xff0c;如navidrome、jellyfin、emby&#xff1b;支持本地音乐播放、离线歌单、逐字歌词、桌面歌词、Touch Bar歌词、Mac状…...

7类水面自动驾驶目标检测数据集该数据集已经包括7个类别类别名字分别是:[‘pier‘, ‘ship‘, ‘boat‘, ‘sailor‘, ‘buoy‘, ‘vessel‘, ‘kayak‘]

7类水面自动驾驶目标检测数据集 该数据集已经包括7个类别 类别名字分别是&#xff1a; [pier, ship, boat, sailor, buoy, vessel, kayak] 共计图片54120张&#xff0c;图像分辨率是1920x1080 数据集是txt格式 数据集按照7:1:2已划分为训练集/验证集和测试集 相关YOLOv5/YOLOv6…...

戴森球计划FactoryBluePrints蓝图库:从新手到高手的终极工厂建设指南

戴森球计划FactoryBluePrints蓝图库&#xff1a;从新手到高手的终极工厂建设指南 【免费下载链接】FactoryBluePrints 游戏戴森球计划的**工厂**蓝图仓库 项目地址: https://gitcode.com/GitHub_Trending/fa/FactoryBluePrints FactoryBluePrints蓝图库是戴森球计划游戏…...

5分钟成为Switch游戏安装专家:Awoo Installer终极指南

5分钟成为Switch游戏安装专家&#xff1a;Awoo Installer终极指南 【免费下载链接】Awoo-Installer A No-Bullshit NSP, NSZ, XCI, and XCZ Installer for Nintendo Switch 项目地址: https://gitcode.com/gh_mirrors/aw/Awoo-Installer 还在为Switch游戏安装而烦恼吗&a…...

系统安全组件管理工具:Windows环境下安全服务的精细化控制方案

系统安全组件管理工具&#xff1a;Windows环境下安全服务的精细化控制方案 【免费下载链接】windows-defender-remover A tool which is uses to remove Windows Defender in Windows 8.x, Windows 10 (every version) and Windows 11. 项目地址: https://gitcode.com/gh_mir…...

从L2到Wing Loss:人脸关键点检测损失函数演进与实战解析

1. 人脸关键点检测与损失函数基础 人脸关键点检测是计算机视觉中的一项基础任务&#xff0c;需要精确定位眼睛、鼻子、嘴角等面部特征位置。这项技术在美颜相机、虚拟试妆、疲劳驾驶监测等场景中都有广泛应用。要让AI模型学会这项技能&#xff0c;关键在于设计合适的损失函数—…...