Есть ли способ сделать мой слайд слайд плавно влево после определенной высоты, используя функцию прокрутки jquery и анимировать? - PullRequest
0 голосов
/ 20 декабря 2018

У меня есть фиксированный div, который я поместил справа: -35px.Я хочу, чтобы все получилось: 0px, если прокрутить 350px.У меня есть код jquery ниже

$(window).scroll(function() {
var height = $(window).scrollTop();

if(height  > 350) {
     $("#MySideDiv").animate({ "right": 0 }, "slow")
     }
else{
     $("#MySideDiv").animate({ "right": -55 }, "slow")
     }
 });

Это хорошо работает только тогда, когда я не включаю бит else.Тем не менее, я хочу, чтобы он исчез, если пользователь прокручивает обратно до менее чем 350 пикселей.Есть ли способ добиться этого?

1 Ответ

0 голосов
/ 20 декабря 2018

Я не уверен, что точно понимаю вашу проблему, но надеюсь, что это поможет.

var isVisible = false;
$(window).scroll(function() {
var height = $(window).scrollTop();
var div = $("#MySideDiv");

  if(height  > 350 && isVisible === false) {
        div.clearQueue().stop().animate({ "right": 0 }, 'slow');
      isVisible = true;
   } else if (height  < 350 && isVisible === true) {
      div.clearQueue().stop().animate({ "right": '-55px' }, "slow");
      isVisible = false;
     }
 });

https://jsfiddle.net/mfbgqxyp/1/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...