jQuery mmenu 使页面自动跳转到顶部
Posted
技术标签:
【中文标题】jQuery mmenu 使页面自动跳转到顶部【英文标题】:jQuery mmenu makes page automatically jump to top 【发布时间】:2014-05-03 05:44:45 【问题描述】:对于一个大学项目,我正在尝试为响应式网站实施移动菜单。为此,我使用了 jQuery 插件 mmenu。
一切似乎都很好,除了一件事: 每当我打开菜单时,它都会滚动到页面顶部,而不是停留在原来的位置。我还意识到在菜单打开时我无法滚动页面(与此处的示例相反:http://mmenu.frebsite.nl/mmenu/demo/onepage.html)
我的代码结构如下:
<body>
<!-- Mobile Navigation -->
<nav id="mobilenav">
<div>
<ul>
...
</ul>
</div>
</nav>
<div id="wrapper">
<header class="mm-fixed-top hidden-desktop">
...
<a href="#mobilenav" class="pull-left"><i class="fa fa-bars"></i></a>
...
</header>
<div id="topbar">
...
</div>
<div id="content">
...
</div>
</div>
<div id="tothetop" class="hidden-desktop">
...
</div>
<div id="bottom" class="visible-desktop">
...
</div>
<!-- Scripts -->
...
</body>
您可以在http://www.mikehudson.de/BA/ 上查看正在解决的问题。
提前感谢您的回答。
-- 迈克
【问题讨论】:
检查 CSS 中的 html 和 body。如果两者的身高都为 100%,则会进行这些跳跃 【参考方案1】:您是否将此插件与 Foundation 5 一起使用。如果是,那么您可以在 global.scss 文件中将 html、body 高度从 100% 更改为 auto。
例如...
来自:
// Must be 100% for off canvas to work
html, body height: 100%;
到:
// Must be 100% for off canvas to work
html, body height: auto;
【讨论】:
【参考方案2】:如果您确实将 100% 应用于 body/html,如果您的触发器碰巧在 href 中有一个“#”,请确保在 click 事件上使用 preventDefault()。这让我大吃一惊。
【讨论】:
我改为自动,但我没有为此使用锚点(使用跨度),它仍然会跳...以上是关于jQuery mmenu 使页面自动跳转到顶部的主要内容,如果未能解决你的问题,请参考以下文章