如果用户在没有滚动条的情况下使用滚轮滚动,则触发
Trigger if user scrolls with scroll wheel when no scrollbar is present
所以,我正在尝试创建一些独特的、使用绝对定位的东西。与overflow:hidden;
一起,这个网站不会包含滚动条,但我仍然需要测试用户何时使用滚轮。
尝试
这是我的问题的代码段。
document.getElementById("main").onscroll=function(){
console.log("scrolled");
document.getElementById("scrolled").innerHTML="true";
}
#main {
width:100px;
height:100px;
border:1px solid #000;
overflow:hidden;
}
.object {
width:100%;
height:75%;
background:rgba(0,0,0,0.1);
}
<div id="main">
<div class="object"></div>
<div class="object"></div>
<div class="object">Can't see me.</div>
</div>
(The objects inside are expanding, it's just hidden)<br>
Try scrolling (with scroll wheel) in the div, then look below.<br>
Scroll triggered: <span id="scrolled">false</span>
正如你所看到的,没有滚动被触发,那是因为没有滚动条!从本质上讲,我仍然想知道滚轮是在使用,我也想知道它是在向上还是向下使用。
我的目标是什么
基本上,我想在我的网站后面创建这种"动态滚动"类型的框架。因此,容器是overflow:hidden
,但当滚轮被触发时(向上或向下),它会增加或减少一个变量,该变量在JavaScript中设置为top:(variable)
。
所以总的来说,我只想要一些能检测滚轮是否被使用的东西,这样我就可以完成我的动态滚动脚本。
我知道的事情(所以你不应该向我提及)
我知道有些人的滚轮坏了,甚至没有。在你提到它之前,我的解决方案是在每张幻灯片的底部(或顶部)放上按钮,然后向下或向上滚动。
其他
解决方案应该是纯javascript,这意味着没有库!很抱歉让你经历了这场斗争,但这正是我所需要的。我唯一会接受的是,如果脚本太长,而库使其变短。否则,没有编号
仅此而已
感谢您通读,祝您好运,找到解决方案!我也会努力寻找解决方案。如果我发现任何信息,或者需要一些不同的东西,我会更新这篇文章,让你知道。
欢迎在评论中提问。
您可以尝试在车轮事件中逐渐设置位置。每次滚动鼠标滚轮时都会触发此事件。事件属性deltaX、deltaY、deltaZ包含给定方向上的偏移大小。
代码段http://jsfiddle.net/07516utp/显示了对此事件的滚动增量的感知。
document.addEventListener('wheel', onWheel);
function onWheel(event) {
document.querySelector('#log').innerHTML = 'event: dx=' + event.deltaX + ' dy=' + event.deltaY + ' dz=' + event.deltaZ;
}
相关文章:
- javascript跨浏览器确定用户是否滚动到页面底部
- javascript移动交叉浏览器确定用户是否滚动到页面底部
- jQuery:如何检测用户何时再次滚动到顶部
- 当用户已经向下滚动页面时,我如何导航到锚标记
- 在用户用动画滚动175像素后缩小固定的Div
- 如何发现用户是否使用jQuery滚动到HTML容器的末尾
- 如何检测用户何时在主动滚动
- 当用户滚动到页面的某个部分时,如何触发关键帧
- 如何让左侧导航跟随用户向下滚动页面
- 如何检测用户是否移动了滚动条
- 当用户将鼠标移到屏幕/图表上时,自动滚动将暂停.如果鼠标移动停止,自动滚动将再次恢复
- 下一个/上一个锚链接,如何在用户滚动时更新下一个/上一个链接
- 在用户滚动时加载单个页面网站的不同部分
- 当用户滚动到底部时,Ajax函数会多次触发
- 用户向下滚动时自动垂直展开
- 如何制作HTML小部件“;跟随“;当用户在页面上下滚动时,保持可见
- 当用户向下滚动我的网页时,如何删除chrome地址栏周围的边框
- 如何使用jquery自动滚动用户
- 防止页面重新加载后退按钮(使用缓存).或者向下滚动用户.(至少在iPhone上发行)
- 强制垂直滚动用户操作显示为水平滚动