slideToggle 无法关闭

问题描述 投票:0回答:2

这是我的javascript代码,我正在尝试使用slideToggle,它可以单独工作,即使我在文档中使用它,它也可以工作,但不会关闭。

$(".nav-toggle").click(function () {
    $(".header .nav").slideToggle();
  })
  
  $(".header .nav a").click(function () {
    if ($(window).width() < 768) {
      $(".header .nav").slideToggle();
    }
  });
javascript slidetoggle
2个回答
0
投票

当您单击

.header .nav
中的链接时,单击事件会向上冒泡到其父元素,包括
.header .nav
本身。为了防止这种行为,您可以在链接的单击事件处理程序中使用
event.stopPropagation()
来停止事件传播。

$(".nav-toggle").click(function () {
  $(".header .nav").slideToggle();
});

$(".header .nav a").click(function (event) {
  if ($(window).width() < 768) {
    $(".header .nav").slideToggle();
    event.stopPropagation(); // Stop event propagation
  }
});

0
投票

谢谢您的回答。我尝试了你的代码,但还是一样。我不明白为什么“slideToggle”在文档之外工作正常,但在主项目中却出现问题。

© www.soinside.com 2019 - 2024. All rights reserved.