在HTML/CSS/JS中,有一件事我搞不懂:如何防止人们使用鼠标轮按下滚动元素(即按住鼠标轮并拖动,或单击鼠标轮,拖动,再次单击鼠标轮),以及当人们试图在触摸设备上拖动元素时,如何做同样的事情。
这是我在其他地方尝试制作汉堡式菜单时偶然发现的。
将元素的CSS设置为溢出:隐藏将隐藏滚动条,但使用上述两种方法,仍然很容易滚动它们。到目前为止,我找到的唯一“解决方案”是创建第二个元素,并将其放在不应该滚动的元素的顶部。但对我来说,这似乎不是一个完美的解决方案。
发布于 2014-06-16 07:29:48
如果你制造小提琴,我们可以给出一个更好的解决方案。如果您对jquery没有意见,我可以为您的第二点给出一些解决方案:“例如,在打开菜单时,如何能够水平和垂直地滚动这个页面?”
首先,您需要创建一个简单的类,如下所示。
.overhidden
{
overflow:hidden !important;
}接下来,当您按下屏幕上的菜单图标时,我们需要应用这个类。此外,我们需要删除,如果他们再次点击关闭。在jquery中这样做很容易,如下所示。
$(document).ready(function(){
$('#hamburger').click(function(){
$('body').toggleClass('overhidden');
});
});https://stackoverflow.com/questions/24234990
复制相似问题