![](/img/trans.png)
[英]jQuery scrollTo plugin to scroll screen to div wouldn't work, why?
[英]JQuery scrollTo function error can't find a way to scroll to a certain div ID during on click event
我正在嘗試滾動到我網站上的某個部分,此部分標有ID,我想在點擊事件上使用動畫jquery滾動。 這是我目前的代碼:
js標題部分
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<script src="index.js"></script>
菜單區域
<li><a onclick="scrollTo()" href="#testimonials">Testimonials</a></li>
<li><a onclick="scrollTo()" href="#portfolio">Portfolio</a></li>
<li><a onclick="scrollTo()" href="#contact">Contact</a></li>
<li><a onclick="scrollTo()" href="#faq">FAQ</a></li>
Javascript文件
$(document).ready(function() {
console.log("Test")
function scrollTo() {
console.log("Clicked!")
var elem = document.getElementById('testimonials');
console.log(elem)
elem.scrollTop = elem.scrollHeight;
window.scrollTo
}
})
在這里看到: codepen
首先:不要使用scrollTo
作為處理程序名稱。 因為scrollTo
是js中的一個函數。
附加步驟:
<a onclick="scrollTo_(event,'testimonials')" href="#testimonials">Testimonials</a>
它將傳遞click event
和id
,讓處理程序知道目標元素的id是什么。
function scrollTo_(ev,id) {
ev.preventDefault();
$([document.documentElement, document.body]).animate({
scrollTop: $("#"+id).offset().top
}, 2000);
}
它使用preventDefault來阻止正常的<a>
點擊行為。 並使用此答案( 如何使用jquery動畫滾動)以使用jquery動畫滾動到元素。
補充筆記:
$(document).ready
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.