Есть следующая конструкция:
$(document).ready(function() {
var element = '.someblock';
var newclass = 'greenbg';
$(window).scroll(function() {
if ($(window).scrollTop()) {
$(element).addClass(newclass);
} else {
$(element).removeClass(newclass);
}
});
});
.someblock {
width: 200px;
padding: 20px;
border: 1px solid #ccc;
background: #f5f5f5;
margin-top: 130px;
margin-bottom: 500px;
}
.someblock.greenbg {
background: #3ED40D;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
<div class="someblock">
Жизненный опыт - это когда неприятности воспринимаешь как само собой разумеющееся.
</div>
Скрипт добавляет новый класс для блока с классом "someblock" как только начинаешь прокрутку страницы.
Помогите изменить скрипт таким образом, чтобы новый класс добавлялся не при начале прокрутки страницы, а когда блок с классом "someblock" достигнет верхней границы экрана, также требуется чтобы данный скрипт срабатывал только при условии если по ширине экран больше 980px (если по ширине меньше 980px, то все остается как есть, новые классы не добавляются).
Подскажите пожалуйста, как реализовать данную задачу в виде рабочего скрипта?
addClassOnTop();
function addClassOnTop() {
const $window = $(window),
$block = $('.someblock');
onScroll();
$window.on('scroll', onScroll);
function onScroll() {
if($window.width() <= 980) return false;
$block.toggleClass('greenbg', $window.scrollTop() === 0);
}
}
.someblock {
width: 200px;
padding: 20px;
border: 1px solid #ccc;
background: #f5f5f5;
margin-top: 130px;
margin-bottom: 500px;
}
.someblock.greenbg {
background: #3ED40D;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="someblock">
Жизненный опыт - это когда неприятности воспринимаешь как само собой разумеющееся.
</div>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
К примеру, у меня есть таблица звонков с полями "номер телефона" и "статус":