0

我在尝试在页面中平滑滚动时遇到了一些问题,基本上我在这样的页面周围有锚标签:

<li><a href="#description">Module Description</a></li>
...
<section id=" description ">

而且我正在使用以下运行良好的 javascript,但问题是如果我使用此脚本,引导程序 3 的模式和其他功能会中断并且不再工作

  $('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;
  }
}
}); 

我想知道这个脚本的解决方案是什么,或者还有其他类似的脚本用 bootstrap 3 测试过谢谢

4

2 回答 2

4

$('a[href*=#]:not([href=#])')将非常通用还将更改目标锚点,例如模态。尝试使其不那么通用:

<ul id="insidepagenav">
<li><a href="#description">Module Description</a></li>

$('ul#insidepagenav > li > a[href*=#]:not([href=#])')

于 2013-10-09T07:21:11.540 回答
0

如果你更换

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

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

您可以防止平滑滚动适用于该特定链接

于 2014-10-23T01:19:50.260 回答