Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   scroll после resize (https://javascript.ru/forum/events/73872-scroll-posle-resize.html)

bipib 24.05.2018 14:22

scroll после resize
 
$(window).resize(function () {

	if (width => 1221) {
		$(window).scroll(function(){
		  var sticky = $('.sticky'),
			  scroll = $(window).scrollTop(),

		  if (scroll >= 100) { 
			sticky.addClass('fix-cart');
		  } else {
			sticky.removeClass('fix-cart');
		  }

		});
	}
});

нужно что заработал такой код. Как сделать правильным - чтобы после проверки условия ширины окна выполнялось условие по скролу

Nexus 24.05.2018 14:27

Так?
$('html,body').scroll(function() {
    if ($(window).width() >= 1221)
        $('.sticky')[($('html,body').scrollTop() >= 100 ? 'add' : 'remove') + 'Class']('fix-cart');
});

bipib 24.05.2018 14:32

Цитата:

Сообщение от Nexus (Сообщение 485955)
Так?
$('html,body').scroll(function() {
    if ($(window).width() >= 1221)
        $('.sticky')[($('html,body').scrollTop() >= 100 ? 'add' : 'remove') + 'Class']('fix-cart');
});

Вроде тоже хорошо. Решил только что так
$(window).scroll(function(){
  var sticky = $('.sticky'),
	  scroll = $(window).scrollTop();

  if (scroll >= 100 && window.innerWidth > 1220) { 
	sticky.addClass('fix-cart');
  } else {
	sticky.removeClass('fix-cart');
  }

});
тоже работает как надо

Nexus 24.05.2018 14:37

В Safari, по-моему, проблемы с обработкой window.scroll.

bipib 24.05.2018 14:39

какие? а как проверить?

Nexus 24.05.2018 14:50

bipib, я не уверен в этом, но, опять же по-моему, в сафари обработчик скролла повешанный на глобальный объект window не срабатывает.
Не помню точно со скроллом там проблемы или с чем-то другим.


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