Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Выполнить действие при скроле. (https://javascript.ru/forum/events/80704-vypolnit-dejjstvie-pri-skrole.html)

wins 17.07.2020 22:26

Выполнить действие при скроле.
 
Здравствуйте, хочу выполнить действие каждый раз когда пользователь скролит сайт. Скрол - принять хеш с юрла и если хеш нужный то выполнить другое действие. Пробовал так и не только так
var section = location.hash;

jQuery(window).scroll(function (e) {
	if (section == 'section1'){
		alert ('YES');
	} else {
		alert ('NO');
	}
});

Но не работает.
Сам url выглядит так, "site,com/#section1"
При скроле #section1 в юрле меняется на #section2, #section3 и т.д.

Подскажите, в чем проблема, целый день экспериментирую и гуглю.:help:

wins 17.07.2020 23:29

Нашел решение
jQuery(window).bind('hashchange', function() {
var section = location.hash;
if(section == '#section1' || section == '#section6'){
jQuery("header").addClass("filter");
jQuery(".sh-light-logo").hide();
jQuery(".sh-standard-logo").show();
}
if(section == '#section0' || section == '#section7'){
jQuery("header").removeClass("filter");
jQuery(".sh-light-logo").show();
jQuery(".sh-standard-logo").hide();
}
});


Часовой пояс GMT +3, время: 04:17.