所以我很新jQuery的(和编码为此事),我试图做到这一点:JQuery的点击类追加和删除叠加
当有子菜单项的菜单项点击覆盖图淡入(创建模式效果),使焦点位于子菜单上。我已经能够实现这一目标,但我们并不确定采取何种最佳途径来关闭它。
用户应该能够点击覆盖图并关闭子菜单并移除覆盖图。他们也应该能够通过点击主菜单项来做同样的事情。我将指派有子菜单项的菜单项的类是“.jrm菜单类别”见下面的代码:
//Add our overlay to the body and fade it in.
$('.jrm-menu-categories').click(function() {
$('#wrap_all').append('<div id="overlay-2"></div>');
$('#overlay-2').fadeIn(300);
});
// remove overlay when overlay is clicked
$(function(){// document.ready shorthand
$(document).on('click','#overlay-2',function() {
$('#overlay-2').fadeOut('3000',function(){//use 3000 in place of 300m
$('#overlay-2').remove();
});
return false;
});
});
我怎样才能实现我上面提到的?我很难过!
在此先感谢!
---------------------------更新------------------ -------------
嘿谢谢所有的答案家伙!不过,也许我需要澄清。点击时,我已经可以删除叠加层。但是我试图将覆盖层链接到“.jrm-menu-categories”类,反之亦然。
所以当单击该类时会弹出叠加层。 (在我的开发站点上,弹出一个子菜单,其Z-index高于叠加层)。现在这就是我想要做的。点击叠加层时,菜单应该关闭,覆盖层应该隐藏。另一种我也想要的方式是,如果带有类的原始菜单被点击,则菜单应该关闭,覆盖图应该隐藏。 我希望这是有道理的。
我在想,一个.toggle会起作用,因为我不能添加另一个点击功能来关闭覆盖,因为他们互相取消。但我不知道如何使用切换功能。
再次感谢!这里很大的帮助! :)
你能为它提供一个小提琴吗? –