Показать сообщение отдельно
  #3 (permalink)  
Старый 21.04.2017, 10:03
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,734

Rise, jQuery version 2.1.1
Это вариант на котором я остановился (не работает в Safari).
var cont=(!is_win_safari() && is_safari())?'html,body':window;
$(cont).on('scroll',function(e){
	var $t=$(this),$m=$('.floating_menu');

	if($t.width()<960) return;
	if($m.hasClass('hide'))
		$m.attr('data-state','hide').show().animate({top:-100},0).hide().removeClass('hide');

	if($t.scrollTop()<500)
		$('.floating_menu[data-state="show"]').attr('data-state','hide')
			.stop(true).show()
			.animate({top:-$m.height()},300,function(){$(this).hide();});
	else
		$('.floating_menu[data-state="hide"]').attr('data-state','show')
			.stop(true).show()
			.animate({top:0},300);
}).scroll();
Ответить с цитированием