scrollTop() показывает результат только после обновления страницы

#javascript #html #jquery #css

#javascript #HTML #jquery #css

Вопрос:

Hii Я работаю над jquery, но мой код работает странным образом. Вот мой код

 $(document).ready(function() {
        if($(window).scrollTop() >= 50) {
            $("h1").fadeIn("slow");
        };
    })
 

Я хочу, чтобы мой текст исчезал при прокрутке. Но мой текст появляется только после обновления страницы после прокрутки.
Я не знаю, почему, что не так с моим кодом.

Комментарии:

1. Привет. Вам нужно обернуть эту логику в событие прокрутки.

2. О, извините, я не знал об этом. Я здесь новичок.

3. Все в порядке, друг. Хорошего дня 🙂

Ответ №1:

Как я писал выше в комментарии, вам нужно обернуть свою логику в событие прокрутки окна. Вот так:

 $(window).scroll(function() {
    if($(window).scrollTop() >= 50) {
      $("h1").fadeIn("slow");
    }
})
 

Я сделал для вас пример, указав position: sticky для h1 тега, чтобы вы могли визуально понять, как работает код.

 $(document).ready(function() {
  $(window).scroll(function() {
    if($(window).scrollTop() >= 50) {
      $("h1").fadeIn("slow");
    }
  })
}) 
 body {
  height: 3000px;
}

h1 {
  display: none;
  position: sticky;
  top: 0;
} 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<h1>Test_Text</h1> 

Комментарии:

1. @NeerajChimwal, нет проблем, друг.