javascript - 响应式菜单 : on hover submenu shows error

标签 javascript jquery html css menu

长话短说:我根据教程创建了一个响应式菜单。当您将鼠标悬停在投资组合按钮上时,菜单应该会显示子菜单,而在移动模式下,您需要按下按钮才能显示子菜单(效果很好)。问题是教程有一个错误:如果您在桌面模式下按下投资组合按钮,子菜单将不会再次显示,除非您按下(单击)按钮,就像在移动模式下一样。

这是实际示例:http://armandorodriguez.pe/info
我试着在这里写代码,但不明白指令,所以这是jsfiddle:jsfiddle.net/x44w1twf/

所以基本上我需要的是,如果我在桌面模式下,即使我按下组合按钮,它也总是在悬停时显示子菜单,而在移动设备中,只有当我按下按钮时。现在我想这可以用 js 中的简单代码解决,但我对 js 一无所知,所以任何帮助将不胜感激。

最佳答案

薄的是,当您单击元素以隐藏它时,它会设置内联样式 display: none 并覆盖样式:

header nav ul li:hover .children {
    display:block;
}

所以在样式中添加 !important 是这样的:

header nav ul li:hover .children {
    display:block !important;
}

Here a working jsfiddle example

对于移动端的正常行为,只需在媒体中添加样式,如下所示:

@media screen and (min-width: 800px) {    
    header nav ul li:hover .children {
       display:block !important;
    }
}

关于javascript - 响应式菜单 : on hover submenu shows error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31713109/

相关文章:

javascript - 如何创建一个由 0 和 1 组成的矩阵,使得行和列之和达到特定值?

html - 如何处理 Windows 版 Safari 中的页面大小调整问题?

javascript - Jquery 条形码扫描仪集成

javascript - 网速慢或数据加载过多会影响onclick slideToggle()功能吗?

javascript - 使用 JS 循环创建的元素与另一个元素重叠

javascript - HTML - 为属性动态创建的输入标签

javascript - 停止在事件元素上传播

javascript - 包未在项目中正确导入

javascript - vue Js从对象绑定(bind)到数组

javascript - 如何检测拉动刷新