繁体   English   中英

JS平滑滚动与基础冲突

[英]JS Smooth Scroll conflicting with Foundation

我认为这很简单(也许很简单)。 但是由于我对javascript的了解非常有限,所以我需要问你们。

我正在使用此代码

$(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
        }, 6000);
        return false;
      }
    }
  });
});

做平滑滚动的事情。 但是问题是:它还会“破坏” Foundation的选项卡/手风琴。 有一种方法可以限制平滑滚动只适用于一个类,也许吗? 例如:

<a href="#home" class="smooth"></a>

如果是这样,我该怎么做?

谢谢。

尝试更换

$( '一个[HREF * =#]:不使用(HREF =#])')

$( '一个[HREF * =#]平滑:否([HREF =#])')

使用此代码,JQuery选择所有具有平滑类的链接(在CSS中由.smooth指示)

现在,几年后,Foundation 6开箱即用地支持此功能:

https://foundation.zurb.com/sites/docs/smooth-scroll.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM