js,鼠标上下滑轮或者拉动滚动条触发事件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js,鼠标上下滑轮或者拉动滚动条触发事件相关的知识,希望对你有一定的参考价值。

我想鼠标滚动上下滑轮或者拖动网页的滚动条的时候触发一个事件,怎么做??

就是网页太长向下拉的时候触发一个事件.

window.onmousewheel = function()  //触发滚轮事件


window.onscroll = function()  //滚动条事件


//其实你的问题直接使用判断滚动条应该就可以了,但是如果一定要拖动滚动条才执行事件,我们可以通过获取鼠标位置来模拟
var a = document.getElementsByTagName("html")[0];
window.onmousemove = function()
        //一般默认滚动条12px宽,当鼠标位于浏览器窗口右边12px内按下鼠标可以视为拖动滚动条
if(innerWidth - event.clientX < 12)
a.onmousedown = function()
console.log(1);

else
a.onmousedown = null;

参考技术A

可通过onscroll事件触发,通过scrollTop获取滚动高度。

如:

document.getElementsByTagName("body")[0].onscroll=function()
if(document.getElementsByTagName("body")[0].scrollTop>600)
alert("网页太长");

本回答被提问者和网友采纳
参考技术B 哪位大神指点啊,以上方法都试了还是不行 参考技术C

用jquery很方便实现啊~

$(window).scroll( function()  
    if(window.scrollTop>500)
        执行触发事件.
    
  );

参考技术D 换个思想,当网页里TOP移动段距离的时候触发就可以了~追问

也可以,不过要怎么监视到网页里TOP移动是触发事件呢

追答

楼上的给你说了~额……思想让别人学去了~你看看……

以上是关于js,鼠标上下滑轮或者拉动滚动条触发事件的主要内容,如果未能解决你的问题,请参考以下文章

css如何在页面内出现滚动条的地方禁止鼠标滑轮滚动

java中怎么设置鼠标滑轮来滚动java滚动条滚动的速度

html5 threejs OrbitControls的鼠标左键与拉动滚动条事件冲突

js判断鼠标滑轮滚动方向并根据滚动的方向触发不同的事件

js怎么让body滚动条滚动到底或者到底了 鼠标再滚动时让另外一个DIV滚动

overflow-y: hidden 隐藏了上下滚动条以后鼠标滚球无法滚动?