jquery 鼠标滚轮事件 插件 Mousewheel

摘要:
默认情况下,jquery插件不支持鼠标滚轮事件。现在我们可以使用它添加跨浏览器鼠标滚轮支持。您可以使用jquery Mouseweel插件。有两种方法可以使用鼠标滚轮事件:使用鼠标滚轮和卸载鼠标滚轮事件函数;使用经典的绑定和解除绑定函数。要使用此函数,只需将目标元素的“mouseweel”事件绑定到事件处理程序。事件回调函数的第一个参数是event,第二个参数是delta,表示鼠标滚轮的更改值。

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. vardir=delta>0?'Up':'Down',
  5. vel=Math.abs(delta);
  6. $(this).text(dir+'atavelocityof'+vel);
  7. returnfalse;
  8. });
  9. });
jquery的鼠标滚轮插件 Mousewheel下载
使用
要使用这个功能,只需对目标元素的’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》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇前端js上传文件 到后端接收文件【linux基础】如何查看剩余电量下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

JQuery中的DOM操作

内容摘录自锋利的JQuery一书 一. DOM操作的分类 一般来说,DOM操作分为3个方面,即DOM Core(核心)、HTML-DOM和CSS-DOM。 1. DOM Core DOM Core并不专属于javascript,任何一种支持DOM的程序设计语言都可以使用它。它的用途并非仅限于处理网页,也可以用来处理任何一种使用标记语言编写出来的文档,如XM...

第二百零九节,jQuery EasyUI,Pagination(分页)组件

jQuery EasyUI,Pagination(分页)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 Pagination(分页)组件的使用方法,这个组件依赖于 LinkButton(按钮)组件。 一.加载方式 class 加载方式 <div id="box"class="easy...

UserWarning: indexing with dtype torch.uint8 is now deprecated, please use a dtype torch.bool instead.

内部实则是bool。原: idxs = torch.Tensor(idxs_0.shape[0]).byte() idxs[:] = 1 idxs[idxs_0 < 0] = 0 idxs[idxs_end >= int(N / args.gps_step)] = 0 delta_p_gt = delta...

js实现Mac触摸板双指事件(上/下/左/右/放大/缩小)

前言 这几天在修复一个web问题时,需要捕获Mac触摸板双指事件(上、下、左、右、放大、缩小),但发现并没有现成的轮子,还是要自己造。 例如:jquery.mousewheel.js(添加跨浏览器的鼠标滚轮支持), 给得太简单,没有处理Mac双指行为,所以不能用。 目标 获取Mac触摸板双指行为,具体有两个,一个是实时拖动路线,二是手势(上、下、左、右、...

jquery插件jqModal 模态窗口

http://dev.iceburg.net/jquery/jqModal/#examples jqModal Minimalist Modaling with jQuery   What? jqModal is a plugin for jQuery to help you display notices, dialogs, and modal win...

jquery操作复选框(checkbox)的12个小技巧总结

1、获取单个checkbox选中项(三种写法)$("input:checkbox:checked").val()或者$("input:[type='checkbox']:checked").val();或者$("input:[name='ck']:checked").val(); 2、 获取多个checkbox选中项$('input:checkbox')....