您现在的位置是:网站首页> 编程资料编程资料
DIV的失去焦点(blur)实现方法纯html+css实现Element loading效果纯html+css实现奥运五环的示例代码HTML+CSS实现导航条下拉菜单的示例代码html+css实现滚动到元素位置显示加载动画效果纯html+css实现打字效果html+css实现环绕倒影加载特效html输入两个数实现加减乘除功能html中显示特殊符号(附带特殊字符对应表)关于html选择框创建占位符的问题html css3不拉伸图片显示效果
2023-10-09
332人已围观
简介 这篇文章主要介绍了DIV的失去焦点(blur)实现方法,用防抖实现DIV鼠标移出消失,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
用防抖实现DIV鼠标移出消失
由于div标签本身不支持onblur事件,所以对于点击一个按钮弹出的div,我们想要当这个div失去焦点的时候,让它消失不能使用的onblur来实现。
但是可以利用onmouseout和事件来实现DIV失去焦点消失的功能。直接使用onmouseout来实现移出消失可能会有一个问题:假设你的按钮的位置和弹出的div的位置不是重合的那么会导致鼠标移动就会马上去触发onmouseout事件,从而没什么卵用。
利用防抖、onmouseout、onmouseover组合来实现一个体验很好的blur事件
/** *鼠标移动过div事件 */ function moveOverEvent(ele,outTimer) { let overTimer = null; return function(){ clearTimeout(outTimer); //div没有消失的情况下,在移动进来div,那么就清除上次移出的事件 clearTimeout(overTimer); //防抖 overTimer = setTimeout(()=>{ ele.style.display = "block"; },500); } } /** * 鼠标移出 */ function moveOutEvent(ele,outTimer) { return function(){ clearTimeout(outTimer); //防抖 outTimer = setTimeout(()=>{ //移动出去后等500ms,在消失这div ele.style.display = "none"; },500); } } 然后无意中发现一个可以通过给div添加tabindex属性,从而实现blur事件,所以上面的代码可能是白写了。(PS 我感觉上面的体验会好一些,减少了很多误触)
//设置了tabindex后,元素默认加虚线,通过ouline=0进行去除(IE设置hidefocus="true")
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
相关内容
- html form表单input使用disabled后提交不能获取表单值的解决方法XHTML入门学习教程:表单标签
- Html页面支持暗黑模式的实现纯CSS免费让网站拥有暗黑模式切换功能的实现代码CSS变量实现暗黑模式的示例代码详解Html5项目适配系统深色模式方案总结
- 猜你小时候 动漫篇 所有答案大全_手机游戏_游戏攻略_
- 猜你小时候 生活用品篇 所有答案大全_手机游戏_游戏攻略_
- 猜你小时候 角色篇 所有答案大全_手机游戏_游戏攻略_
- 猜你小时候 玩具篇 所有答案大全_手机游戏_游戏攻略_
- 猜你小时候 饮食篇 所有答案大全_手机游戏_游戏攻略_
- 节奏大师500关怎么过 节奏大师500关攻略 _手机游戏_游戏攻略_
- 节奏大师2.1.1.1版本更新 新增S周闯关模式特性介绍 _手机游戏_游戏攻略_
- 一闯到底 第6关 图文攻略_手机游戏_游戏攻略_
