У меня есть 4 divs, к которым я хочу применить действие прокрутки.JQuery Scroll DRY
Код работает, если я повторяю его для каждого div, но я хочу иметь только один блок кода для обработки события.
Код, который работает следующим образом -
$('nav').on('click', function(){
$('html, body').animate({ scrollTop: $('#about').offset().top}, 1000)
});
код, который я хотел бы теперь использовать это -
var navText = $('.nav-text').on('click', function() {
var txt = $(this).attr('id');
var id = '#' + txt;
console.log(id);
});
$('nav').on('click', function(){
$('html, body').animate({ scrollTop: $(navText).offset().top}, 1000)
});
Когда приведенный выше код применяется и нажатия на ссылку на страницу только уменьшается на несколько пикселей.
Благодарим за помощь.
Cheers,
Райан
Что такое '.nav-Text' и' nav' здесь, и почему 'navText' когда-нибудь будет чем-то другим, кроме той же коллекции jQuery каждый раз, когда вы нажимаете? Вероятно, вы должны опубликовать пример HTML и как это должно работать – adeneo