我正在尝试创建一个用户无法滚动的页面(表示没有鼠标滚轮,没有空格,没有向下游标等)。而网站本身仍然能够滚动:如果某个特定事件被触发,即触发一个按钮,则滚动应该发生。
我做了一些研究,不仅仅是在stackoverflow,而是在不同的论坛。有传言说这是不可能的,实现禁用滚动的方法是overflow:hidden
嗯,这对我来说是错误的:http://fk-agency.com/
有谁知道这是怎么做的?
我个人的做法是:
创建一个高度仅为视口大小的100%的网站,然后通过css动画或jQuery在其他div中滑动。但它似乎对我很苛刻。
修改:
我尝试使用overflow:hidden
属性,但遇到了滚动无效的问题。
以下是我的项目的实例,不包括必要的代码:
这是一个没有溢出的:隐藏的
编辑#2
我不知道为什么,但突然之间有效。
我将overflow: hidden
应用于body
,然后使用以下脚本通过指定其ID来滚动到元素。都好。非常感谢lukasgeiter,他提到了这个问题。
脚本
function scroll(target){
// target should be like "#id"
$('html, body').animate({
scrollTop: $(target).offset().top
}, 500);
}
答案 0 :(得分:3)
对我而言,可以使用overflow:hidden;
这个网站就是这样完成的......
如果这还不够并且滚轮/箭头/空间仍然有效,则必须为不同的键和滚轮设置处理程序,然后使用e.preventDefault()
或return false
来阻止它们。
例如:
$(window).on("mousewheel", function(e){
e.preventDefault();
});