js禁止鼠标滑轮_js实现鼠标滑动到某个div禁止滚动

本文实例为大家分享了js实现鼠标滑动到某个div禁止滚动的具体代码,供大家参考,具体内容如下

项目中碰到一个场景就是当鼠标滑倒某个div的时候,滑动鼠标页面不再滚动。

这里主要是当鼠标滑动到该div时,监听滚轮事件并通过preventDefault()事件来阻止滚动事件,以下是例子

eg:

#wrap {

position:absolute;

top:200px;

background:#000000;

font-size: 40px;

width:50vw;

text-align: center;

color: #ffffff;

line-height: 300px;

height:300px;

}

鼠标移动进入该区域,页面禁止滚动

window.onload = function () {

for (i = 0; i < 50; i++) {

var x = document.createElement('div');

x.innerHTML = "test
";

document.body.appendChild(x);

}

function $(x) {

return document.getElementById(x);

};

$("wrap").onmousewheel = function scrollWheel(e) {

var sl;

e = e || window.event;

if (navigator.userAgent.toLowerCase().indexOf('msie') >= 0) {

event.returnValue = false;

} else {

e.preventDefault();

};

};

if (navigator.userAgent.toLowerCase().indexOf('firefox') >= 0) {

//firefox支持onmousewheel

addEventListener('DOMMouseScroll',

function (e) {

var obj = e.target;

var onmousewheel;

while (obj) {

onmousewheel = obj.getAttribute('onmousewheel') || obj.onmousewheel;

if (onmousewheel) break;

if (obj.tagName == 'BODY') break;

obj = obj.parentNode;

};

if (onmousewheel) {

if (e.preventDefault) e.preventDefault();

e.returnValue = false; //禁止页面滚动

if (typeof obj.onmousewheel != 'function') {

//将onmousewheel转换成function

eval('window._tmpFun = function(event){' + onmousewheel + '}');

obj.onmousewheel = window._tmpFun;

window._tmpFun = null;

};

// 不直接执行是因为若onmousewheel(e)运行时间较长的话,会导致锁定滚动失效,使用setTimeout可避免

setTimeout(function () {

obj.onmousewheel(e);

},

1);

};

},

false);

};

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

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

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

相关文章

android app应用后台休眠,安卓手机锁屏后程序自动关闭,怎么设置手机app允许锁屏后台运行...

原标题&#xff1a;安卓手机锁屏后程序自动关闭&#xff0c;怎么设置手机app允许锁屏后台运行安卓手机锁屏后&#xff0c;很多程序就会自动关闭&#xff0c;实际上&#xff0c;这是安卓手机的一种保护机制。为了使系统能够流畅稳定的运行以及更加省电&#xff0c;它都会在手机锁…

ps怎么清屏_黑洞PS大赛刷屏!最后一张扎心了……

事件视界望远镜(EHT)项目组和中国科学院共同在上海天文台发布由EHT“拍下”的人类历史上首张黑洞照片这意味着人类成功获得了超大黑洞的第一个直接视觉证据黑洞首次露出真容&#xff01;据说宇宙诞生了138亿年年龄最大的黑洞也已经超过了100亿岁经过了这么久黑洞家族的成员才终…

linux和windows和鸿蒙,linux很好,但为何大家都用Win,鸿蒙系统站错阵营了吗?

原标题&#xff1a;linux很好&#xff0c;但为何大家都用Win&#xff0c;鸿蒙系统站错阵营了吗&#xff1f;由目前已知信息可知&#xff0c;华为“鸿蒙系统”很可能基于linux开源程序搭建&#xff0c;这个特点与苹果微软由很大不同。苹果手机目前主要使用Objective-C程序语言开…

centos7磁盘逻辑分区命令_CentOS7 磁盘分区(主分区、扩展分区和逻辑分区)的创建、挂载与删除...

创建磁盘分区查看磁盘分区情况&#xff1a;fdisk -l[rootmodel ~]# fdisk -l //查看系统中所有磁盘的分区列表Disk/dev/sda: 107.4 GB, 107374182400 bytes, 209715200sectorsUnits sectors of 1 * 512 512bytesSector size (logical/physical): 512 bytes / 512bytesI/O size…

php使用webservivce_JWS服务开发使用指南

均支持该版本&#xff0c;主要你的web.xml文件中必须制定2.5版本xmlversion"1.0"encoding"UTF-8"?><web-appxmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xmlns"http://java.sun.com/xml/ns/javaee"xmlns:web"ht…

android sdk是灰的,Android Studio 2.3 sdk管理器标签灰显

Android Studio 2.3 - >配置 - > SDK管理器。 这些选项卡呈灰色显示&#xff1a; SDK工具&#xff0c;SDK更新站点。此外&#xff0c;“Show Package Details”复选框呈灰色。 系统正常更新。没有错误消息。Android Studio 2.3 sdk管理器标签灰显我认为这发生在Studio 2.…

android layer阴影,Android Layer-List实现自定义Shape阴影

一、给右侧和底层加阴影android:left"2dp"android:top"2dp">android:angle"270"android:endColor"#0F000000"android:startColor"#0F000000" />android:bottomLeftRadius"6dip"android:bottomRightRadius&q…

localdatetime 默认时间_java中的时间与时区:LocalDateTime和Date

LocalDateTimeLocalDateTime本身不包含时区信息&#xff0c;它存储的是年、月、日、时分秒&#xff0c;纳秒这样的数字。在不同的时区下&#xff0c;这样的数字代表不同的时间。比如一个LocalDateTime存储2020-01-01 08&#xff1a;00&#xff1a;00&#xff0c;这里省略纳秒。…

html 拖拽坐标,Html+css实现拖拽导航条

div横向拖拽排序body, div {padding: 0px;margin: 0px;}.box {position: relative;margin-left: 15px;padding: 10px;padding-right: 0px;width: 810px;border: blue solid 1px;}.box ul{list-style: none;overflow: hidden;padding: 0;margin:0;}.drag {float: left;border: #…

seata 如何开启tcc事物_微服务分布式事务4种解决方案实战

分布式事务分布式事务是指事务的参与者&#xff0c;支持事务的服务器&#xff0c;资源服务器分别位于分布式系统的不同节点之上&#xff0c;通常一个分布式事物中会涉及到对多个数据源或业务系统的操作。典型的分布式事务场景&#xff1a;跨银行转操作就涉及调用两个异地银行服…

python redis 哨兵_Redis哨兵机制

概述上篇文章主要说了Redis 复制的内容&#xff0c;但 Redis 复制有一个缺点&#xff0c;当主机 Master 宕机以后&#xff0c;我们需要人工解决切换&#xff0c;比如使用slaveof no one 。实际上主从复制并没有实现&#xff0c;高可用&#xff0c; 高可用侧重备份机器&#xff…

labview自动生成html,使用LabVIEW实现网页数据提取及交互.pptx

使用 LabVIEW 控制IE或WebBrowser实现网页数据的提取和交互By GSD&#xff1a;attraction - 张生斌2013.1.11可能会遇到的问题网页能否被程序控制&#xff0c;程序和网页如何通信&#xff1f;如何下载网页中我们所关注的数据&#xff1f;如何用程序修改网页中表单的内容&#x…

pdf python定位_如何使用PyPDF2获取PDF定位

我正在使用Python/Django。PyPDF2阅读我目前的pdf。如何使用PyPDF2获取PDF定位我想阅读我已经保存的pdf文件&#xff0c;并获得pdf内单页的方向。我期望能够确定页面是横向还是纵向。tempoutpdffilelocation settings.TEMPLATES_ROOT nameOfFinalPdfpageOrientation pageToE…

android 内容显示栏,android – 在工具栏下显示内容

您好我试图简单地将我的内容放在工具栏下面,但是当我运行我的应用程序时,当它应该低于它时,一些内容隐藏在它后面.我已经阅读了关于使用框架布局来尝试将其分开但我已经陷入困境.我目前正在使用随软件提供的基本android studio导航抽屉模板,并想知道我必须做出哪些更改.我的协调…

ios nslog 例子_iOS 典型内存泄露案例 - zhenshan2013的个人空间 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...

最近进行iOS 安全黑匣子的测试,在Demo中通过不断的点击调加密接口,同时通过苹果自带instrument的leak工具监控,发现典型的内存泄漏,监控图如下:上图中红色的部分表示该操作触发的代码有内存泄漏的可能,于是拿出源代码来研究一番,源代码如下://加密接口-(IBAction)encrypt:(id)s…

HTML饼状图中心添加文字,echarts饼状图环形中间动态文字

let currName "";let myChart echarts.getInstanceByDom(document.getElementById(‘chart-panel‘));//console.log(myChart);myChart.on(‘mouseover‘, (params) >{currNameparams.name;console.log(params)let opmyChart.getOption();let _label{normal:{sho…

pos共识机制_OK区块链60讲 | 第17集:什么是PoS共识机制

什么是PoS共识机制https://www.zhihu.com/video/1196092110837805056《OK区块链60讲》是由OKEx&#xff06;新浪科技联合出品的区块链科普动画视频&#xff0c;针对区块链零基础用户&#xff0c;通过系列文章、科普动画等形式&#xff0c;从概念、技术、应用等角度&#xff0c;…

html溢出左右滚动,html-选项卡溢出时水平滚动

我在容器中有一个基本表。 该表将包含约25列。 我正在尝试在表格溢出时添加水平滚动条&#xff0c;现在过得很艰难。现在正在发生的情况是&#xff0c;表格单元格通过自动调整单元格的高度并保持固定的表格宽度来容纳单元格的内容。对于我的方法为何无法解决此问题的建议&#…

大疆无人机android登录闪退,你的DJI APP闪退了吗?附官方解决方案

原标题&#xff1a;你的DJI APP闪退了吗&#xff1f;附官方解决方案今天&#xff0c;很多飞友反应&#xff0c;在使用大疆无人机过程中出现DJI APP闪退情况。随后在大疆社区官方给出了解决方案&#xff0c;如下&#xff1a;关于DJI GO 4 APP闪退解决方案目前关于DJI GO4 APP闪退…

ps导出gif颜色不对_PS基础知识(1)

视图平移命令&#xff1a;1,使用工具箱中的抓手工具或着&#xff08;H&#xff09;2按住空格键&#xff0c;上下左右移动视图。&#xff08;常用方法&#xff09;图像格式PSD&#xff1a;原始的图像文件&#xff0c;包含所有的 Photoshop 处理信息&#xff0c;如图层&#xff0…