我尝试使用引导程序使Scrollspy平滑滚动。可以,但是滚动目标错误。
您可以看到我的小提琴:http://jsfiddle.net/gdfqtLxh/12/
如果您点击第二个菜单,它会很好用,但是当您点击第三个菜单时,它不会到达正确的目标。< / p>
这是我的JavaScript。.
$("#list-example a[href^='#']").on('click', function(e) {
// prevent default anchor click behavior
event.preventDefault();
// store hash
var hash = this.hash;
// animate
$('.scrollspy-example').animate({
scrollTop: $(hash).offset().top
}, 300);
});
更新视频(添加了一些文本):https://youtu.be/921oDDaSZq0
答案 0 :(得分:0)
您的jsfiddle在Firefox中可以正常工作,但在Chrome中不能正常工作。
我将所有的js和css链接替换为bootstrap的原始链接,以防它们过时,并且现在可以在Chrome浏览器中使用。
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
在此处查看此jsfiddle:http://jsfiddle.net/h6nc9ro4/
我也删除了您的JavaScript代码,因为它不是必需的。