gpt4 book ai didi

javascript - 当我想平滑滚动到这些部分时,JQuery 不工作

转载 作者:行者123 更新时间:2023-11-28 00:50:50 25 4
gpt4 key购买 nike

我希望在单击链接后平滑滚动到页面上的部分。我找到了制作方法,但它对我不起作用,我不明白为什么。

这是我的带有链接和部分的 html 代码:

    <header class="d-flex main-header">
<div class="container-fluid header-container">
<nav class="navbar navbar-toggleable-sm navbar-inverse main-navigation">
<h1 class="mr-auto"><a href="index.html"><img src="images/site_logo.png" alt="logo"></a></h1>
<button class="navbar-toggler navbar-toggler-right menu-button" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarCollapse">
<ul class="navbar-nav ml-md-auto">
<li class="nav-item">
<a class="nav-link" href="#about">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#portfolio">Portfolio</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#team">Team</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#contact">Contact</a>
</li>
</ul>
</div>
</nav>
</div>
</header>

<!--Sections-->

<section class="d-flex about" id="about">
<!--Content-->
</section>


<section class="d-flex portfolio" id="portfolio">
<!--Content-->
</section>

<section class="d-flex team" id="team">
<!--Content-->
</section>

<section class="d-flex contact" id="contact">
<!--Content-->
</section>

这里是我如何在 </body> 之前连接 jquery :

<script
src="https://code.jquery.com/jquery-3.2.1.js"
integrity="sha256-DZAnKJ/6XZ9si04Hgrsxu/8s717jcIzLy3oi35EouyE="
crossorigin="anonymous"></script>

这里是我如何在 <head></head> 中连接我的脚本:

<script src="js/script.js"></script>

这里是 script.js 的代码:

$(document).on('click', 'a[href^="#"]', function (event) {
event.preventDefault();

$('html, body').animate({
scrollTop: $($.attr(this, 'href')).offset().top
}, 500);
});

最佳答案

引用你所说的话:

  1. “这里是我如何在 </body> 之前连接 jquery”
  2. “这是我如何在 <head></head> 中连接我的脚本”

所以这里的问题是 script.js<head>依赖于 jQuery,但 jQuery 仅包含在 <body> 的末尾.

您应该更改您的代码,以便在 之前 包含 jQuery script.js :

    ...
<script src="https://code.jquery.com/jquery-3.2.1.js" integrity="sha256-DZAnKJ/6XZ9si04Hgrsxu/8s717jcIzLy3oi35EouyE=" crossorigin="anonymous"></script>
<script src="js/script.js"></script>
</body>

关于javascript - 当我想平滑滚动到这些部分时,JQuery 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47490041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com