SmoothScoll 和 lightbox 冲突

SmoothScoll and lightbox conflict

我已经 this website,Smoothscroll javascript 和 lightbox one 之间存在冲突。

这是卷轴的脚本

$(function() {
    $('a[href*="#"]:not([href="#"])').click(function() {
      if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {
        var target = $(this.hash);
        target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
        if (target.length) {
          $('html, body').animate({
            scrollTop: target.offset().top
          }, 1000);
          return false;
        }
      }
    });
  });

我该如何解决?如何使灯箱和平滑滚动同时工作?

我不是 jQuery 专家,不知道选择器有多灵活,但这里有一些建议:

建议 1:

我不认为这个选择器:

a[href*="#"]:not([href="#"])

将正常工作。如果 href 元素没有属性值“#”,则您选择了所有这些元素。我认为这种情况不会像您所拥有的那样涵盖具有不同价值的链接:“#queen-bee”。我认为你使用不同的选择器。

建议2:

if (target.length) {
   $('html, body').animate({
      scrollTop: target.offset().top
   }, 1000);

   return false; // Try removing the return
}

return 语句可以防止事件冒泡,因此灯箱不会收到它。尝试删除它。