如何切换和悬停侧边菜单?

时间:2014-02-07 09:34:31

标签: jquery menu hover click toggle

我目前在网站上有一个侧面菜单。可以通过悬停特定区域打开侧边菜单,如果不悬停则关闭。这工作正常,但如果我点击特定区域,我也希望它打开,这也有效。但如果再次单击此区域,我希望它再次关闭,这是我现在的问题。

$.fn.boxLid = function(options){
  var box = new BoxLid(options);
  return this.each(function(){
    $(this).hover(box.open, box.close) && $('#id').click(box.open);
  });
};

到目前为止我使用了click函数,因为.toggle(box.open,box.close);不行。有人有想法吗?提前谢谢!

1 个答案:

答案 0 :(得分:0)

没有jQuery第二次单击处理程序,因此您可能希望使用指标来完成此操作。像这样:

$.fn.boxLid = function (options) {
    var box = new BoxLid(options);
    var open = false;
    return this.each(function () {
        $(this).hover(box.open, box.close); 
        $('#id').click(function(){
           if(open){
             box.close;
             open = false;
           }else{
             box.open
             open = true;
           }
        });
    });
};