【问题标题】:Multi-level drop down menu has toggle issue多级下拉菜单有切换问题
【发布时间】:2014-07-15 03:54:12
【问题描述】:

有人可以帮我解决下拉菜单中的切换问题吗?我放慢了动画的速度只是为了观看。

这是我的多级下拉菜单(仅限测试页)。如果您单击/点击第二级选项(“边框”、“拉链”、“礼服衬衫”等,您将看到问题——该功能开始打开第三级菜单,但也关闭了第二级菜单级菜单。

这是我正在使用的基本功能:

$(document).ready(function () {
$("#dropmenu li:has(div)").click(function () {
    $('#dropmenu li.top-level > #dropmenu li.top-level div.drop_6col-bottom').not($(this).children("#dropmenu li.top-level div.drop_6col-bottom").slideToggle(400)).hide();
}).mouseleave(function () {
    $(this).children('div').hide();
});
});

二级功能是一样的,除了“顶级”的每个实例都变成“二级”

我做错了什么?? (是的,我已经详尽地搜索了答案,但没有完全点击。)

【问题讨论】:

  • 尝试使用 event.stopPropagation() 我认为你的事件触发了两次。但您需要在函数中添加参数事件
  • 我该怎么做?抱歉,远非 jQuery 精通,但正在努力。

标签: javascript jquery css


【解决方案1】:

一开始就试试这个

$(document).ready(function () {
  $("#dropmenu li:has(div)").click(function (event) {
    event.stopPropagation();
    $('#dropmenu li.top-level > #dropmenu li.top-level div.drop_6col-bottom').not($(this).children("#dropmenu li.top-level div.drop_6col-bottom").slideToggle(400)).hide();
  }).mouseleave(function () {
    $(this).children('div').hide();
  });
});

【讨论】:

  • 看起来是这样做的!太感谢了!我想出了简单的解决方案,我只见树木不见森林。再次,谢谢!!
猜你喜欢
  • 1970-01-01
  • 2019-03-12
  • 2015-08-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多