弹出一个层,上面的内容较多,想用鼠标滑轮上下滑动的时候,层上下移动,但是页面不动。
请教一下。这个层的属性怎么设置或者是否还需要js?
想滑动鼠标滑轮的时候,只有层上下滑动,层不带滑动框的,页面不动,看看还有高手没?
有问题再追问吧
追问跟你说的正相反,。点击页面弹出层,因为层的内容比较多,想能转动鼠标滑轮时层能上下移动而页面不动。
追答那需要在层里面设置overflow:scroll
追问不想出现滑动框,能直接使层上下移动不?
追答那实现不liao 吧!
有问题再追问吧
嗯嗯,很容易实现的,取消默认的鼠标滚轮动作即可。
看个例子,body和div内容很高,都有滚动条,但div的滚动条被隐藏了。
<body>div绑定mousewheel鼠标滚动事件【火狐用DOMMouseScroll事件,就发现火狐不一样这个,闹心。。。】。
取消默认动作,event.preventDefault()(部分IE:window.event.returnValue=false),这样滚轮滚动后就不会滚动页面了。
根据滚轮滚动的方向对div内容进行控制,获取滚轮方向用event.wheelDelta,大于0为向上滚,小于0向下滚【火狐为event.detail,方向刚好相反,大于0向下。。。】,再更改div的scrollTop值即可以模拟滚轮滚动效果了,这时body就这么也不会动了。
这些实现起来代码有点多,主要有绑定事件通用方法,事件处理通用方法,我自己写了类库处理页面内表格滚动,图片滚轮放大等功能,原理就是这样的,希望对你有帮助。
本回答被提问者和网友采纳