У меня есть сайт, построенный на Wordpress с использованием темы Genesis, HERE. Недавно я реализовал «липкое меню». Меню прекрасно работает в Chrome, Opera и Firefox, но имеет странную графическую проблему в Safari. После прокрутки меню в Safari «летеет» с левой стороны экрана перед тем, как вставляться в соответствующее место. Это не происходит при прокрутке вверх, только вниз.Ошибка при отображении липкого меню при просмотре в Safari
Я просмотрел несколько форумов и попытался найти решения. Похоже, что проблема может быть решена в моем JS, переключении «окна» и «документа»; однако в этом случае это не сработало.
Вот мой JS, для пинков:
jQuery(document).ready(function($) {
var $filter = $('.nav-primary');
var $filterSpacer = $('<div />', {
"class": "filter-drop-spacer",
"height": $filter.outerHeight()
});
if ($filter.size())
{
$(window).scroll(function()
{
if (!$filter.hasClass('fix') && $(window).scrollTop() > $filter.offset().top && window.innerWidth > 768)
{
$filter.before($filterSpacer);
$filter.addClass("fix");
}
else if ($filter.hasClass('fix') && $(window).scrollTop() < $filterSpacer.offset().top)
{
$filter.removeClass("fix");
$filterSpacer.remove();
}
});
}
});