jquery - 为什么jquery Mmenu在PC上的响应模式下溢出,但在iphone上没有?
问题描述
我正在使用 mmenu 设置在移动设备上使用的过滤器。我在开发时遇到的一个问题是,每当我单击菜单中的任何内容时,菜单都会溢出。这只发生在浏览器中的移动响应模式下,在实际的 iphone 上它可以正常工作。
该站点有 2 个 Mmenu,一个用于引导导航,一个用于此过滤器。用于引导导航的那个工作正常。
导航代码:
<div id="filterHolder">
<nav id="clinicFilter">
<div id="settings">
<ul>
<li class="Divider"> </li>
<li id="setting-location">
<span>
<em class="Counter">Alla</em>
Stad
</span>
<div id="locations">
<ul>
<li class="searchresult Divider">Searchresults (fake)</li>
<li class="searchresult"><span>Amsterdam</span></li>
<li class="searchresult"><span>Athens</span></li>
<li class="Divider"> </li>
<li><span>Current location</span></li>
<li class="Divider"> </li>
<li class="Divider">Recently searched</li>
<li><span>Amsterdam</span></li>
<li><span>London</span></li>
<li><span>Tokyo</span></li>
</ul>
</div>
</li>
<li id="setting-radius">
<span>
<em class="Counter">Alla</em>
Behandlar
</span>
<div id="radius">
<ul>
<li>
<span>Alla</span>
<input type="radio" name="radius" class="Check" checked/>
</li>
<li>
<span>Hund</span>
<input type="radio" name="radius" class="Check" />
</li>
<li>
<span>Katt</span>
<input type="radio" name="radius" class="Check" />
</li>
<li>
<span>Smådjur</span>
<input type="radio" name="radius" class="Check" />
</li>
<li>
<span>Häst</span>
<input type="radio" name="radius" class="Check" />
</li>
</ul>
<p class="mmpanelSetAnimalType">
<a href="#settings" class="button">Filtrera</a>
</p>
</div>
</li>
<li class="Divider">Filter</li>
<li>
<span>Vetified</span>
<input type="checkbox" class="Toggle" />
</li>
<li>
<span>Hög kundnöjdhet</span>
<input type="checkbox" class="Toggle" />
</li>
<li>
<span>Transparent prislista</span>
<input type="checkbox" class="Toggle" />
</li>
<li>
<span>Jour</span>
<input type="checkbox" class="Toggle" />
</li>
<li>
<span>Har butik</span>
<input type="checkbox" class="Toggle" />
</li>
</ul>
<br />
<p class="mm-button">
<a href="#/search" class="button">Filtrera</a>
</p>
</div>
</nav>
</div>
导航-JS:
document.addEventListener(
"DOMContentLoaded", () => {
const menu = new Mmenu("#clinicFilter", {
//options
"navbars": [
{
"position": "top",
"content": [
"close"
]
}
],
pageScroll: true,
slidingSubmenus: true,
searchfield: {
add: true,
addTo: "#locations",
placeholder: "Stad",
showTextItems: true
},
onClick: {
setSelected: false
},
navbar: {
title: "Filtrera"
},
extensions: ["border-none", "pagedim-black"]
}, {
//Configuration
});
}
);
解决方案
尝试添加minimum-scale=1.0
到您的viewport
元标题。这为我解决了 Google Chrome 上类似的 440px 问题。
推荐阅读
- java - 如何使用spring boot在达到到期时间后刷新amazon s3 presigned URL?
- bash - Incron-Job 启动脚本但只有第一个命令
- python - 如何在 Python 中找到具有默认命名空间的 XML 子元素?
- r - 具有多个图例的绘图上的不同图例位置
- r - R Flexdashboard:我可以向 Flexdashboard 添加一个标签,它只是一个常规的 Rmarkdown 文档吗?
- jenkins - Ansible、jenkins_script 模块和 args 问题
- ruby-on-rails - 将文件从 Rails API 发送到另一个 Rails API,附加到电子邮件
- highcharts - Highcharts堆积条不能显示总成交量
- google-data-studio - Google Data Studio 如何计算仅不同值的总和
- reactjs - 滚动魔术反应