如何让div这样的DOM对象能够使用鼠标滚轮或箭头键(如overflow:scroll
)滚动,但不能显示滚动条(如overflow:hidden
} )?
答案 0 :(得分:5)
您可以将事件侦听器绑定到scrollldown / scrollup(通过mousewheel事件,查看event.wheelDelta到calc大小和scroll的directino)并手动将绝对定位div放在另一个固定高度绝对/相对定位div内。因此,在向下滚动时,您会减小内部div的y位置,向上滚动会增加y位置。
对于箭头键,只需将类似的函数绑定到keydown事件检查,并根据需要检查向下/向上箭头。
我在这里做了一个jsfiddle示例:http://jsfiddle.net/wsmithrill/U7ju8/32/
答案 1 :(得分:2)
如果您想完全跳过javascript,可以尝试我的建议here。
基本上,有一个容器div比你的内容div稍窄一些。将容器设置为overflow:hidden,但将content div设置为overflow:scroll。如果容器较窄,则会隐藏滚动条。
答案 2 :(得分:0)
如果可能需要此功能,当您到达顶部时停止向下滚动:
var top_val = $("#inner").css("top");
if (top_val.indexOf("-") > -1)
{
$("#inner").css("top", parseInt($("#inner").css("top"), 10) + 5 + "px");
}