У меня есть div, который появляется на прокрутке после 520px. Каждый раз, когда я прокручиваю вниз, он, кажется, исчезает, а затем постоянно мерцает, как будто он продолжает работать снова и снова. Я искал это бесконечно, и я не могу найти исправление, которое действительно работает. (Это в Chrome). Вот мой Jquery:мерцающий jquery div на свитке?
$(window).bind("scroll", function(e) {
e.preventDefault();
if ($(this).stop().scrollTop() > 520) {
$("#fadeblock").fadeIn();
} else {
$("#fadeblock").stop().fadeOut();
}
});
И это мой CSS
#fadeblock {
display:none;
position:fixed;}
#sidebar {
width:200px;
height:200px;
padding:450px 20px 20px 20px;
position:absolute;
margin-left:3%;
}
HTML:
<div id="fadeblock">
<div id="sidebar">
<div id="title">{Title}</div>
<div id="desc">{Description}</div>
<div id="links">
<a href="/">link</a>
<a href="/">link</a>
<a href="/">link</a>
<a href="/">link</a>
</div>
Вы не закрываем все дивы ... кроме того, ничего не мерцает на Mac/Safari. Вероятно, проблема похожа на некоторые элементы/css под '# fadeblock'. –
Кроме того, я задаюсь вопросом о вашем большом дополнении (450 + 20px), внутри элемента размером всего 200x200px ... –
Возможно, вам стоит проверить, является ли элемент видимым перед использованием fadeIn() - вам не нужно fadeIn, если он уже существует (например, прокрутка> 520). – verjas