Сергей Бурдужа, вы подписываете две функции на одно событие. С таким же успехом можно всё написать выше этих функций, а сами функции выкинуть. Так нельзя и не надо делать.
Нужно приблизительно так.
(Код ещё можно оптимизировать)
(function($){
var windowSize = 1140,
isDesktop = !($(window).width() < windowSize),
$categoriesWrap = $('.categories-wrapper'),
$headerMain = $('header'), // Скорее всего что-то типа так
headerMainHeight = $headerMain.height(),
scrollTop = $(window).scrollTop(),
forDesktop = function(){
!$categoriesWrap.is(":visible") && $categoriesWrap.css({'display': 'block'});
scrollTop = $(window).scrollTop();
if(scrollTop < headerMainHeight + 10){
$categoriesWrap.removeClass('fixed');
$categoriesWrap.css('display', 'block');
$categoriesWrap.css('opacity', 1);
}
if(scrollTop > headerMainHeight + 10) {
$categoriesWrap.css('opacity', 0);
$categoriesWrap.css('display', 'block');
}
if(scrollTop > headerMainHeight + 100) {
$categoriesWrap.addClass('fixed');
$categoriesWrap.css('opacity', 1);
}
},
forMobile = function(){
$('body').css('padding-top', 100);
$categoriesWrap.is(":visible") && $categoriesWrap.css({'display': 'none'});
scrollTop = $(window).scrollTop();
if(scrollTop > headerMainHeight + 10) {
$categoriesWrap.hide();
}else if(scrollTop < headerMainHeight + 10){
headerMain.removeClass('fixed');
$categoriesWrap.hide();
}
if(scrollTop > headerMainHeight + 100) {
headerMain.addClass('fixed');
}
};
// Подписываемся на события
$(window).on('resize scroll', function(e){
isDesktop = !($(window).width() < windowSize);
headerMainHeight = $headerMain.height();
isDesktop ? forDesktop() : forMobile();
});
// Запустим
isDesktop ? forDesktop() : forMobile();
}(jQuery));