Tag: mousewheel

鼠标滚轮滚动事件

我想要的是:当鼠标指向div时,页面的滚动条不会滚动。 这不可能吗? 当我这样做时,页面的滚动条总是滚动。 这是一段javascript代码: if(document.addEventListener){ document.addEventListener(‘DOMMouseScroll’,scrollFunc,false); } window.onmousewheel=document.onmousewheel=scrollFunc;//IE/Opera/Chrome/Safari 怎么做?

如何在jQuery中只触发一次MouseWheel事件?

因此,每次用户通过鼠标滚轮向上或向下滚动时,我只想触发一次function。 请参阅: jsFiddle演示 。 问题是即使我有e.preventDefault(),该函数仍然会多次触发。 目标是每当用户向上或向下滚动时,该function仅触发一次。 与此网站类似。 这是我到目前为止的代码: var sq = {}; sq = document; if (sq.addEventListener) { sq.addEventListener(“mousewheel”, MouseWheelHandler(), false); sq.addEventListener(“DOMMouseScroll”, MouseWheelHandler(), false); } else { sq.attachEvent(“onmousewheel”, MouseWheelHandler()); } function MouseWheelHandler() { return function (e) { var e = window.event || e; var delta = Math.max(-1, Math.min(1, (e.wheelDelta || -e.detail))); if (delta < 0) […]

限制“鼠标滚轮”增量每次滚动一次

我正在使用下面的代码,在不同的方向滚动两个div(),但我很想知道你是否可以限制滚动,所以每次滚动只会触发一次(而不是连续滚动并将我的函数发送到无尽的循环。 $(‘.page-left, .page-right’).bind(‘mousewheel’, function(event, delta) { var windowHeight = $(window).height(); if (delta 0) { nextProject(); } }); 你可以看到我在这里的位置: http : //dev.rdck.co/lyonandlyon/ 谢谢你,R 动画function供参考: var prevProject = function() { // up arrow/scroll up var windowHeight = $(window).height(); $(‘.page-left .page-left-wrapper’).css({bottom:’auto’}); $(‘.page-left .page-left-wrapper’).animate({top:0},800, function() { $(‘.page-left .page-left-wrapper’).prepend($(‘.page-left .project-left:last-of-type’)); $(‘.page-left .page-left-wrapper’).css({top:-windowHeight}); }); $(‘.page-right .page-right-wrapper’).css({top:’auto’}); $(‘.page-right .page-right-wrapper’).animate({bottom:+windowHeight*2},800, function() { $(‘.page-right […]

Jquery,取消绑定鼠标滚轮事件,然后在操作完成后重新绑定它?

我一直在努力解决这个问题。我正在使用这个代码来监控鼠标滚轮所以它可以用于我用滑块滚动…但是,它有一个问题,操作排队等等如果你用鼠标滚动快速滚动(就像任何人会正常做的那样)它们会累积并导致错误的行为..我知道用动画处理这类问题,但不是用鼠标滚轮监视器。 我想做一些事情,比如在动作开始时取消绑定鼠标滚轮(在这种情况下,在鼠标滚轮移动后滚动滚动条)然后重新绑定它,所以如果用户做太多滚动太快它只是忽略直到最初滚动完成..我尝试下面的代码,但它没有重新绑定,所以我不知道我做错了什么,任何建议表示赞赏。 $(“#wavetextcontainer”).bind(“mousewheel”, function(event, delta) { //HERE IS WHERE EVENT IS UNBOUND: $(“#wavetextcontainer”).unbind(“mousewheel”); var speed = 10; var mySlider = $(“#slider”); var sliderVal = mySlider.slider(“option”, “value”); sliderVal += (delta*speed); if (sliderVal > mySlider.slider(“option”, “max”)) sliderVal = mySlider.slider(“option”, “max”); else if (sliderVal < mySlider.slider("option", "min")) sliderVal = mySlider.slider("option", "min"); $("#slider").slider("value", sliderVal); event.preventDefault(); // HERE I WANT […]

通过固定内容传递鼠标滚轮事件

了解这一点的最好方法是看看这个小提琴 。 请注意,红色框中固定内容上的鼠标滚轮无效。 我想要滚动的可滚动div。 如果小提琴死了 – 基本上我有一个可滚动的div,上面有固定元素。 通常,当鼠标滚过可滚动的div时,它当然会滚动。 但是如果你在固定元素上,那么就不会发生滚动。 根据您的站点布局,这可能对用户来说是直观的。 jQuery解决方案没问题。

jQuery UI Slider – >鼠标滚轮支持?

你可能已经知道我是jQuery的新手,所以仍然非常允许不属于这个主题的代码改进。 这是我的HTML代码: Bananas: 这是我可怕的js代码: $( “#bananas” ).slider({ orientation: “vertical”, range: “min”, min: 0, max: 100, value: 20, step: 5, slide: function( event, ui ) { $( “#bananas_amount_percent” ).val( ui.value + ” %” ); // the code displays a percentage by standart, but I need the real value, too: var bananas_amount_percent = $( “#bananas_amount_percent” ).val(); var […]

如何禁用鼠标滚轮单击按钮?

我正在尝试找到一种方法来禁用鼠标滚轮按钮的默认操作,即在新选项卡中打开链接。 那可能吗?

firefox + jquery鼠标滚动事件错误

更新大卫建议的工作修复(见下文): 更换 $(‘.scrollMe’).bind(“mousewheel DOMMouseScroll”, …) 同 $(‘.scrollMe’).bind(“mousewheel DOMMouseScroll MozMousePixelScroll”, …) 原始邮政 Firefox 16.0.2(最新版)显示绑定“mousewheel / DOMMouseScroll”事件时的问题。 当鼠标指针位于我的目标div顶部时使用鼠标滚动滚动会导致窗口滚动 – 而我显然不希望这样。 我尝试添加几种方法来阻止传播等,但似乎没有任何效果。 Javascript代码: $(document).ready(function() { $(‘.scrollMe’).bind(“mousewheel DOMMouseScroll”, function(e) { e.stopImmediatePropagation(); e.stopPropagation(); e.preventDefault(); var delta = parseInt(e.originalEvent.wheelDelta || -e.originalEvent.detail); $(this).empty(); return false; }); }); 要查看它的实际效果,请按照下面的jsFiddle链接。 在示例页面上,只需将鼠标指针放在带有红色框的div中,然后使用鼠标滚轮。 Firefox将首次(意外地)滚动父窗口,而其他浏览器则不会。 jsFiddle代码示例 奇怪的是,一旦你在绑定元素上触发事件,Firefox就不会重复这种行为,这意味着它会停止滚动页面。 但是,在您手动滚动页面并再次尝试后,它会重复此行为。 我也在IE9和Chrome中测试了这个,但在这些浏览器中无法检测到这个问题(意味着它们没有意外滚动窗口),所以我猜它是特定于Firefox的(也禁用了firefox中的每个插件等) ) 这真的是firefox中的一个错误(如果有的话,是否会出现跨浏览器黑客攻击)? 或者,如果您知道任何其他解决方案,以实现捕获鼠标滚轮事件的相同效果,而无需滚动页面的窗口,请随时回答!