pointer-events 鼠标事件控制开关

禁用鼠标事件,设置pointer-events属性为none: pointer-events:none 元素不再是鼠标事件的目标,鼠标不再监听当前层而去监听下面的层中的元素。

开启鼠标事件,设置pointer-events为auto: pointer-events:auto 效果和没有定义pointer-events属性相同,鼠标不会穿透当前层。

作用

阻止用户的点击动作产生任何效果

阻止缺省鼠标指针的显示 阻止CSS里的 hover 和 active 状态的变化触发事件

阻止JavaScript点击动作触发的事件

提交页面,提交按钮点击后,添加这个样式属性(style=“pointer-events”),来防止重复提交。

举例

阻止点击事件的效果

 

 代码展示

 

 

运行效果:a 标签的默认手型效果没有,点击默认跳转也没有了

 

 

 解除元素的hover效果

 

 代码展示

 

 

运行效果如下:鼠标移入hover效果就没有了,即背景不会变成红色了

 

 

pointer-events:none的运用场景

1、 任何元素设置pointer-event:none的效果相当于input[type=text|button|radio|checkbox] 设置disabled 属性,可以实现事件的禁用,例如: <a href="xxxxxx" style="pointer-events: none">click me</a> 这个链接,是点不了的,并且 hover 也没有效果,但是可以通过tab来选中该元素,并按下enter键来触发链接,当href属性去掉,就不能通过tab进行触发

2、 当要禁用select下拉框可以设置pointer-event:none;

3、 当很多元素需要定位在一个地图层上面,需用到绝对定位、相对定位的元素,这样的话,这些元素就会盖住下面的地图层,以至于地图层无法操作。这时元素设置 pointer-events: none,然后地图就可以拖动和点击了。但是操作区域本身却无法操作了,可以再给需要操作的元素区域设置为 pointer-events:auto

posted @   LLL啊啊啊  阅读(300)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
点击右上角即可分享
微信分享提示