Javascript菜单切换在上线后无法在移动设备上运行
我有一个页面,当点击菜单锚时可以切换菜单。在xamp服务器上本地托管时,它在移动设备上运行良好,但在生产服务器上仅显示#。不过,当我调整桌面窗口大小时,它仍然有效,但在我的手机上不起作用。 这是我切换菜单的链接Javascript菜单切换在上线后无法在移动设备上运行,javascript,html,jquery,Javascript,Html,Jquery,我有一个页面,当点击菜单锚时可以切换菜单。在xamp服务器上本地托管时,它在移动设备上运行良好,但在生产服务器上仅显示#。不过,当我调整桌面窗口大小时,它仍然有效,但在我的手机上不起作用。 这是我切换菜单的链接 <div class="menu-toggle"> <a href="#"> <i class="fa fa-bars"></i> <span>Menu</span>
<div class="menu-toggle">
<a href="#">
<i class="fa fa-bars"></i>
<span>Menu</span>
</a>
</div>
我的CSS代码是
.header-ctn .menu-toggle {
display: none;
}
@media only screen and (max-width: 991px) {
.header-ctn .menu-toggle {
display: inline-block;
}
#responsive-nav {
position: fixed;
left: 0;
top: 0;
background: #15161D;
height: 100vh;
max-width: 250px;
width: 0%;
overflow: hidden;
z-index: 22;
padding-top: 60px;
-webkit-transform: translateX(-100%);
-ms-transform: translateX(-100%);
transform: translateX(-100%);
-webkit-transition: 0.2s all;
transition: 0.2s all;
}
#responsive-nav.active {
-webkit-transform: translateX(0%);
-ms-transform: translateX(0%);
transform: translateX(0%);
width: 100%;
}
我已经包括了我的本地js文件和来自CDN的jquery文件,您提供的最大宽度为991px。因此,当您将浏览器的大小调整到991px以上时,“#响应导航{”将不起作用。请将最大宽度更改为1440px。它也将在桌面视图中起作用@GemeAlex
请检查prod env和您的本地环境中的浏览器版本。因为切换非常简单,正如您所说,如果它在您的本地环境中工作,那么我怀疑可能是版本不匹配,或者prod env中的浏览器不支持切换。这没有回答OP的问题显示“这是正常行为,您检查了吗生产服务器上的桌面控制台?我想你可能有一些javascript错误,你说的浏览器版本是什么意思?我在桌面和手机上使用完全相同的chrome浏览器,用于本地和生产服务器(查看我的网站时)我指的是chrome浏览器的版本。它可能是同一个浏览器,但版本不同。你可以在chrome-帮助-关于chrome下检查版本。我的桌面chrome版本是83.0.4103.97。但问题是,当网络在本地服务器上时,菜单切换在我的手机和桌面上都起作用,它仅在托管在live server上时不起作用。这是指向我网站的链接,所以这是工作副本还是切换有问题?因为..我没有看到任何问题..切换工作绝对正常。但确实存在控制台错误。从这里,切换在移动电话上不起作用,但在调整窗口大小时在桌面上起作用!但在本地,它在手机和桌面上都起作用顶级浏览器!
.header-ctn .menu-toggle {
display: none;
}
@media only screen and (max-width: 991px) {
.header-ctn .menu-toggle {
display: inline-block;
}
#responsive-nav {
position: fixed;
left: 0;
top: 0;
background: #15161D;
height: 100vh;
max-width: 250px;
width: 0%;
overflow: hidden;
z-index: 22;
padding-top: 60px;
-webkit-transform: translateX(-100%);
-ms-transform: translateX(-100%);
transform: translateX(-100%);
-webkit-transition: 0.2s all;
transition: 0.2s all;
}
#responsive-nav.active {
-webkit-transform: translateX(0%);
-ms-transform: translateX(0%);
transform: translateX(0%);
width: 100%;
}