У меня есть кнопка вниз, для которой я хочу, чтобы класс smoothScroll был добавлен так, чтобы при его нажатии плавная прокрутка произошла до того, как он перейдет к связанной ссылке к нему в JS-файле. Я просто не уверен, как сделать addClass запуститься перед window.location каждый раз, когда я пытаюсь его разрывать.Как добавить класс smoothscroll к ссылке, определенной в jquery
HTML:
<div id="downButton">
<i class="fa fa-angle-down"></i>
</div>
JS:
$(function() {
// This will select everything with the class smoothScroll
// This should prevent problems with carousel, scrollspy, etc...
$('.smoothScroll').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); // The number here represents the speed of the scroll in milliseconds
return false;
}
}
});
});
});
$('#downButton').click(function() {
window.location = '#aboutSection';
});
Я не вижу функцию «addClass». К чему вы пытаетесь добавить класс «smoothScroll»? Кроме того, ваш обработчик события $ ('# downButton') должен находиться внутри вашего $ (function() {, чтобы событие click не пыталось привязать к кнопке до того, как кнопка фактически загрузится в DOM. –
выглядит так, как будто у вас есть два метода, по сути делающих одно и то же: метод $ ('# downButton'). click метод перемещает окно в #aboutSection. Кроме того, если вы пытаетесь добавить класс 'smoothScroll' в #downButton , Затем у вас есть новый обработчик событий, который выполняется одним кликом. Если точка гладко прокручивается до #aboutSection при нажатии стрелки вниз, вам не нужно добавлять класс «smoothScroll». Просто обработайте все это в обработчик события $ (# downButton) .click. –
Спасибо за ваш ответ! На странице, где используется класс smoothScroll, есть много других ссылок. Является наиболее эффективным способом обработки гладкого прокрутки в # downButton или добавить класс к # downButton.click? – ericaXL