javascript滚轮事件基础实例讲解(37)

发布时间 - 2026-01-10 23:03:23    点击率:

本文实例为大家分享了js滚轮事件的具体代码,供大家参考,具体内容如下

<html> 
  <head> 
    <meta charset="UTF-8"> 
    <title></title> 
    <style type="text/css"> 
      #box1{ 
        width: 100px; 
        height: 100px; 
        background-color: red; 
      } 
       
    </style> 
     
    <script type="text/javascript"> 
       
      window.onload = function(){ 
         
        //使div可以跟随鼠标滚轮滚动来改变高度 
        //滚轮向下滚,div变高 滚轮向上滚 div变短 
         
        //获取box1 
        var box1 = document.getElementById("box1"); 
         
        /* 
         * onmousewheel 
         * - 鼠标滚轮滚动的事件,但是该事件火狐浏览器并不支持 
         * - 在火狐中需要使用DOMMouseScroll,这个事件只能通过addEventListener()来绑定 
         */ 
        //为box1绑定一个鼠标滚轮滚动的事件 
        box1.onmousewheel = function(event){ 
          event = event || window.event; 
           
          //判断滚轮滚动的方向 
          /* 
           * wheelDelta 
           * - 事件对象中的属性,可以用来判断鼠标滚轮滚动的方向 
           * - 向下滚 -120 向上滚 +120 
           * - 该属性的值并不重要,重要的是值的符号,需要通过符号来判断滚动的方向 
           * - 但是该属性火狐浏览器并不支持 
           */ 
          //alert(event.wheelDelta); 
           
          /* 
           * 火狐中通过detail来判断方向 
           * - 向上滚 -3  向下滚 +3 
           */ 
          //alert(event.detail); 
           
          if(event.wheelDelta < 0 || event.detail > 0){ 
            //向下滚 
            //增加box1的高度 
            box1.style.height = box1.offsetHeight + 10 + "px"; 
             
          }else{ 
            //向上滚 
            //减小box1的高度 
            box1.style.height = box1.offsetHeight - 10 + "px"; 
          } 
           
           
          /* 
           * 使用addEventListener()绑定的事件,不能通过return false来取消默认行为 
           * 需要调用事件对象 preventDefault()方法来取消默认行为 
           * 但是在IE8中没有该方法 
           */ 
          event.preventDefault && event.preventDefault(); 
           
          //当页面中有滚动条时,由于滚轮滚动的默认行为会导致页面整体下移 
          //取消默认行为 
          return false; 
           
        }; 
         
        bind(box1 , "DOMMouseScroll" , box1.onmousewheel); 
         
         
      }; 
       
      function bind(obj , eventStr , callback){ 
         
        if(obj.addEventListener){ 
          //如果是正常浏览器 
          obj.addEventListener(eventStr , callback , false); 
        }else{ 
          //IE8 
          obj.attachEvent("on"+eventStr , function(){ 
            callback.call(obj); 
          }); 
        } 
      } 
       
    </script> 
  </head> 
  <body style="height: 3000px;"> 
     
    <div id="box1"></div> 
     
     
  </body> 
</html> 

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


# js  # 滚轮事件  # js中鼠标滚轮事件详解(firefox多浏览器)  # JS滚轮事件onmousewheel使用介绍  # javascript监听鼠标滚轮事件浅析  # javascript 鼠标滚轮事件  # js捕获鼠标滚轮事件代码  # javascript 兼容鼠标滚轮事件  # javascript实现禁止鼠标滚轮事件  # JavaScript 滚轮事件使用说明  # JavaScript焦点事件、鼠标事件和滚轮事件使用详解  # 两种js监听滚轮事件的实现方法  # 鼠标  # 火狐  # 上滚  # 绑定  # 的是  # 中有  # 大家分享  # 方法来  # 具体内容  # 大家多多  # 可以用来  # 象中  # 滚动条  # 变短  # 但是在  # width  # css  # type  # style  # text 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: JS中对数组元素进行增删改移的方法总结  用yum安装MySQLdb模块的步骤方法  PHP正则匹配日期和时间(时间戳转换)的实例代码  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口  如何在阿里云虚拟服务器快速搭建网站?  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID  Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】  如何用AWS免费套餐快速搭建高效网站?  如何安全更换建站之星模板并保留数据?  Laravel用户密码怎么加密_Laravel Hash门面使用教程  如何在万网自助建站平台快速创建网站?  小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  详解Android图表 MPAndroidChart折线图  进行网站优化必须要坚持的四大原则  百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧  JS碰撞运动实现方法详解  Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】  Laravel怎么实现验证码(Captcha)功能  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  如何在宝塔面板中修改默认建站目录?  为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】  EditPlus中的正则表达式 实战(4)  如何快速生成凡客建站的专业级图册?  如何快速打造个性化非模板自助建站?  教你用AI润色文章,让你的文字表达更专业  高防服务器租用首荐平台,企业级优惠套餐快速部署  如何在 Pandas 中基于一列条件计算另一列的分组均值  Laravel定时任务怎么设置_Laravel Crontab调度器配置  laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法  Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】  标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析  SQL查询语句优化的实用方法总结  php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】  如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】  googleplay官方入口在哪里_Google Play官方商店快速入口指南  佛山网站制作系统,佛山企业变更地址网上办理步骤?  在线教育网站制作平台,山西立德教育官网?  Laravel怎么调用外部API_Laravel Http Client客户端使用  Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】  BootStrap整体框架之基础布局组件  JavaScript如何实现错误处理_try...catch如何捕获异常?  如何用PHP快速搭建CMS系统?  成都网站制作公司哪家好,四川省职工服务网是做什么用?  Laravel Session怎么存储_Laravel Session驱动配置详解