我对学习 HTML、CSS 和 JavaScript 比较陌生。我正在创建一种测试站点,仅用于学习目的,并已开始涉足移动响应式网站。
我有一个测试站点,其中隐藏了一个移动导航按钮,并使用 CSS 媒体查询将显示设置为阻止和隐藏普通导航菜单。我还有移动导航菜单的列表项。为了显示/隐藏这一点,我创建了一个.toggleClass()
jQuery 函数:
function clicktouchmenu()
{
$('#menuico').on('click touch', function()
{
var $mobmen = $(".mobilemenu");
$mobmen.toggleClass('clicked');
});
};
以上是有效的,但我想.slideToggle()
在菜单中添加一个效果。如果我在下面添加这个,.toggleClass()
因为$('.clicked').slideToggle();
菜单行为有点奇怪,如果我点击菜单图标,没有任何反应,但反复点击,它似乎开始活跃并开始上下滑动。
由于我对此相当陌生,因此我希望我这样做完全错误,或者使可能很简单的事情变得过于复杂。
尝试删除clicked
该类并仅slideToggle()
在mobilemenu
类似的情况下使用:
$('#menuico').on('click touch', function()
{
var $mobmen = $("#mobilemenu")
$mobmen.slideToggle();
});
我认为问题在于,如果clicked
该类切换是否显示菜单,那么它会干扰slideToggle()
. 这是因为 的目的slideToggle()
是使某些东西看起来像是在滑入和滑出视图(也就是切换它是否隐藏但带有动画)。所以你只需要一个或另一个,但slideToggle()
显然包括动画。
我添加了一个小提琴,但这只是一个演示,因为我不知道你的 HTML 或 CSS 是什么样的:
小提琴:https : //jsfiddle.net/668mucca/3/
链接到slideToggle()
jQuery 文档中的条目以获得良好的衡量标准:http : //api.jquery.com/slidetoggle/
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句