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

html的onBlur

onBlur 是 HTML 元素的一个事件属性,当元素失去焦点时触发。以下是详细解释:

核心概念

  1. 失去焦点(Blur)​​:当用户选中页面上的某个交互元素(如输入框)后,该元素即获得焦点(focus);当用户点击其他地方或切换到其他元素时,该元素就会失去焦点(blur)。

  2. 作用场景​:常用于表单验证、实时保存数据等场景(例如用户填写完一个输入框后立即检查内容是否合法)。


基础语法

在 HTML 标签中直接定义:

<input type="text" onblur="myFunction()">

通过 JavaScript 绑定事件:

document.getElementById("myInput").addEventListener("blur", () => {console.log("输入框失去焦点!");
});

典型使用场景

1. 输入验证
<input type="email" id="email" onblur="validateEmail()">
<script>function validateEmail() {const email = document.getElementById("email").value;if (!email.includes("@")) {alert("请输入有效的邮箱地址!");}}
</script>

(用户离开邮箱输入框时自动验证格式)

2. 实时保存数据
<textarea id="note" onblur="saveNote()"></textarea>
<script>function saveNote() {const content = document.getElementById("note").value;localStorage.setItem("userNote", content); // 保存到本地存储}
</script>

(用户离开文本框时自动保存内容)


注意事项

  1. onchange 的区别​:

    • onchange:值被修改 ​​ 失去焦点后触发。
    • onblur:​只要失去焦点就触发,无论值是否改变。
  2. focus 事件对应​:

    inputElement.addEventListener("focus", () => {console.log("获得焦点");
    });inputElement.addEventListener("blur", () => {console.log("失去焦点");
    });
  3. 表单提交​:onblur 触发时机在表单提交(submit)之前。


兼容性

所有主流浏览器(Chrome/Firefox/Safari/Edge)均支持 onblur 事件,包括移动端浏览器。

⚠️ ​替代方案​:现代开发推荐使用 addEventListener('blur', ...) 替代 HTML 标签中的 onblur 属性,以实现更好的代码分离。

http://www.dtcms.com/a/305532.html

相关文章:

  • VUE -- 基础知识讲解(三)
  • 鹏哥C语言_82_指针_指针数组
  • 简单线性回归模型原理推导(最小二乘法)和案例解析
  • Linux C:位运算符
  • 【前端】span和div都设置了text-align,为什么对span不起作用
  • python基础语法1,python语法元素(简单易上手的python语法教学)(课后习题)
  • 操作系统- lecture3(进程的定义)
  • LVS (Linux Virtual Server) 解析
  • 微服务消息队列之——RabbitMQ
  • 2019 年 NOI 最后一题题解
  • 智能AI医疗物资/耗材管理系统升级改造方案分析
  • Python自动化测试环境搭建
  • Linux虚拟内存
  • Spring AOP详细解析
  • 基于deepseek的事件穿透分析-风险传导图谱
  • 基于 Hadoop 生态圈的数据仓库实践 —— OLAP 与数据可视化(六)
  • Tomcat线程池、业务线程池与数据库连接池的层级约束关系解析及配置优化
  • 在Trae中使用MoonBit月兔
  • 《Computational principles and challenges in single-cell data integration》
  • Map 集合
  • vue 使用postcss-pxtorem 实现适老化
  • Elasticsearch 基础速成 5 步跑通索引、文档、映射与查询
  • 【php 安装 xdebug】
  • 数学建模——最大最小化模型
  • 关于mysql时间类型和java model的日期类型映射
  • anaconda和Miniconda安装包32位64位皆可,anaconda和Miniconda有什么区别?
  • 【33】C# WinForm入门到精通 ——表格布局器TableLayoutPanel【属性、方法、事件、实例、源码】
  • JetBrains Annotations:从入门到落地,彻底告别 NullPointerException
  • Vue路由钩子完全指南
  • Linux ARM 平台 C 语言操作 Excel 文件的常用库与工具汇总(支持 xls 和 xlsx)