jquery 鼠标滚轮事件 插件 Mousewheel

jquery插件默认是不支持鼠标中轮滚轮事件的,现在我们可以用于添加跨浏览器的鼠标滚轮支持可以使用jquery的Mousewheel插件。

使用mousewheel事件有以下两种方式:

使用mousewheel和unmousewheel事件函数;

使用经典的bind和unbind函数。

JavaScript Code复制内容到剪贴板

  1. $(‘div.mousewheel_example‘).mousewheel(fn);
  2. $(‘div.mousewheel_example‘).bind(‘mousewheel‘, fn);

mousewheel事件的处理函数有一点小小的变化,它除了第一个参数event外,还接收到第二个参数delta。通过参数delta可以获取鼠标滚轮的方向和速度。如果delta的值是负的,那么滚轮就是向下滚动,正的就是向上。

以下是示例的源代码:

JavaScript Code复制内容到剪贴板

  1. jQuery(function($) {
  2. $(‘div.mousewheel_example‘)
  3. .bind(‘mousewheel‘, function(event, delta) {
  4. var dir = delta > 0 ? ‘Up‘ : ‘Down‘,
  5. vel = Math.abs(delta);
  6. $(this).text(dir + ‘ at a velocity of ‘ + vel);
  7. return false;
  8. });
  9. });

jquery的鼠标滚轮插件 Mousewheel下载

从GitHub下载其他版本

使用

要使用这个功能,只需对目标元素的’mousewheel’事件绑定事件处理函数即可。

Mousewheel插件还提供了两个事件函数:mousewheel和unmousewheel,可以对目标元素调用这两个函数,并在参数中指定回调函数。

事件的回调函数第一个参数为event,第二个参数为delta,代表鼠标滚轮的变化值。

以下是上面两种使用方式的示例:

JavaScript Code复制内容到剪贴板

  1. // 绑定方式
  2. $(‘#my_elem‘).bind(‘mousewheel‘, function(event, delta) {
  3. console.log(delta);
  4. });
  5. // 事件函数方式
  6. $(‘#my_elem‘).mousewheel(function(event, delta) {
  7. console.log(delta);
  8. });  

    在发生滚轮滚动事件时,如果要设置屏幕滚动高度,就应该使用animate运动设置 scrollTop 来做。直接设置 window 的scrollTop不能达到效果。总会会出多点来。
  9. $(window).on(‘mousewheel‘, function(event, delta) {
            //var direction = delta > 0 ? ‘Up‘ : ‘Down‘;
            var step = $(window).height();            //可视区高度
            var cur_top = $(window).scrollTop();    //当前滚过的高度
            var direction = delta > 0 ? -1 : 1;
            var height = direction * step + cur_top;
            var x_height = Math.floor(height/step)*step;    //滚过整数倍的可视区大小
    
            $("html, body").stop().animate({ scrollTop: x_height }, 400);    
    
            return false;
        });

jquery 鼠标滚轮事件 插件 Mousewheel

时间: 2024-12-22 19:50:18

jquery 鼠标滚轮事件 插件 Mousewheel的相关文章

JS 鼠标滚轮事件(mousewheel/DOMMouseScroll)

onmousewheel (FireFox不支持此事件) 1 // IE/Opera/Chrome/Safari 2 document.body.onmousewheel = function(event) { 3 event = event || window.event; 4 console.dir(event); 5 }; DOMMouseScroll(FireFox独有事件) 1 // Firefox 2 document.body.addEventListener("DOMMouseS

Jquery 鼠标滚轮事件

http://blog.meathill.net/tech/js/disabled-mouse-wheel-js.html 发现ie9.chrome.opera都好使,唯独特殊处理的Firefox 6不行,经过反复调试发现其它浏览器在事件处理函数中return false就行了,Firefox比较特殊,使用以下代码后测试通过: function disabledMouseWheel() { if (document.addEventListener) { document.addEventLis

jQuery 鼠标滚轮插件 jquery.mousewheel.js

jQuery Mousewheel Plugin,用于添加跨浏览器的鼠标滚轮支持.mousewheel事件的处理函数有一点小小的变化,它除了第一个参数event 外,还接收到第二个参数delta.通过参数delta可以获取鼠标滚轮的方向和速度.如果delta的值是负的即-1,那么滚轮就是向下滚动,正的1就是向上. 官方网址: https://github.com/brandonaaron/jquery-mousewheel 插件方法: 1.为了监听滚轮事件,该插件引入了mousewheel事件,

鼠标滚轮事件MouseWheel

其实在大多数浏览器(IE6, IE7, IE8, Opera 10+, Safari 5+,Chrome)中,都提供了 "mousewheel" 事件.但杯具的是 Firefox 却不支持此事件,不过庆幸 Firefox  中提供了另外一个等同的事件:"DOMMouseScroll" . OK,我们现在已经知道了不同浏览器之间实现的差别,兼容代码如下: var addEvent = (function () { if (window.addEventListener

Winform 中panel的mousewheel鼠标滚轮事件触发

如果将窗体或容器控件(如Panel控件)的AutoScroll属性设置为True时,那么当窗体或Panel容不下其中的子控件时就会出现 滚动条,通过移动滚动条可以上下显示出窗体或Panel中的全部内容.但是默认情况下滚动条的移动只能通过鼠标直接拖动滚动条来实现,而不能通过鼠标的滚 轮来实现上下移动,因此需要手动添加代码来实现这个功能. 滚动鼠标的滚轮,触发的是窗体或控件上的 MouseWheel 事件.但是在VS.net2005中,窗体和控件的事件列表中却不包含 MouseWheel 事件,因此

浅谈鼠标滚轮事件

现在的网页设计越来越高大上,效果越来越炫酷毙.一些浏览器的默认东西都被纷纷嫌弃,取而代之的是各种酷炫拽的模拟组件.就好像之前说过的视差滚动,又好像各种小清新的模拟滚动条,都有共同的事件:滚轮事件. 正如大家所知道的那样,jquery框架默认是不支持鼠标中轮滚轮事件的.要实现不同浏览器之间的滚轮事件,我们不能不说一下这个js组件了:jquery.mousewheel.js. 什么都不说,先上源码: /*! Copyright (c) 2013 Brandon Aaron (http://brand

鼠标滚轮事件的监听

鼠标滚轮事件的监听原理:判断鼠标滚轮的滚动获取一个值,根据这个值判断滚动的方向.分析:首先,判断滚轮方向.Firefox:detail,取值为-/+3(负值向上,正值向下):其他:wheelDelta,取值为+/-120(正值向上,负值向下).兼容所有浏览器的的封装: ? 1 2 3 4 5 6 7 8 9 10 function scrollEvent(ev){     ev = ev || window.event;     var data = '';     if(ev.wheelDel

HTML中鼠标滚轮事件onmousewheel处理

滚轮事件是不同浏览器会有一点点区别,一个像Firefox使用DOMMouseScroll ,ff也可以使用addEventListener方法绑定DomMouseScroll事件,其他的浏览器滚轮事件使用mousewheel,下面我来给大家具体介绍. Firefox使用DOMMouseScroll,其他的浏览器使用mousewheel.滚动事件触发时Firefox使用detail属性捕捉滚轮信息,其他的浏览器使用wheelDelta.不知道为何在该问题上其他厂商和微软的如此一致.Firefox可

鼠标滚轮事件介绍

简介 IE6实现了鼠标滚轮事件mousewheel,这个事件包含了一个鼠标事件所没有的属性,wheelDelta,这 个属性值始终是120的倍数,而且向上滑动一单位,wheelDelta值为120,向下为-120.随后Chrome,Opera, Safari等也都实现了该事件.Opera10之前的版本对wheelDelta值的符号处理错误,需要修改.但是Firefox没 有该事件,而是用DOMMouseScroll.这个事件只有Firefox支持,所以可以单独针对Firefox做兼容. 另外,H