Я использую значение JQuery scrollTop(), чтобы изменить элемент непрозрачности на странице свиткаJQuery scrollTop() точность при быстрой прокрутке страницы (во избежание потери пикселей)
$(document).on('scroll', function(){
if($(document).scrollTop() >= 1){
$('#elem').css({'opacity': ($(document).scrollTop() * 0.02)});
}
});
он работает нормально, но проблема в том, что если Я быстро прокручиваю страницу, «пропускает» много пикселей, что приводит к уродливому эффекту, потому что возвращенные пиксели, например,
0
30
50
80
90
...
и не
0
1
2
3
4
как, когда я медленно прокручивать ...
Кроме того, еще раз, когда я была такая же проблема, где мне нужно гладкие значения, но это поведение «пиксель перескакивание» осложнена вещи ...
Как я могу это решить?
К сожалению, это невозможно. По соображениям производительности значение считывается каждый раз, когда пользовательский интерфейс обновляется, а не при каждом прокрутке каждого пикселя. Это означает, что пиксели будут пропускаться между обновлениями. Вы ничего не можете с этим поделать. Чтобы исправить это, вы можете использовать CSS 'переход' по значению' opacity', чтобы сделать настройку более плавной –
О, это звучит плохо ... :(На данный момент я не знаю, что делать – neoDev