Не всегда подгружается меню

Y1
На сайте с 13.09.2010
Offline
37
515

Привет, всем!

Сайт forexpapa.ru, адаптивный под размер экрана пользователя. На малых разрешениях, когда меню трансформируется в выпадающий список, бывает, что меню не подгружается. После повторной перезагрузки страницы - всегда появляется. Случается редко, но иногда замечаю. Кто может подсказать, в чем проблема + возможное решение? Может кто сталкивался...

Проблема начала появляться, когда я начал прогинаться под Google и его рекомендации по увеличению скорости загрузки. Яваскрипты снесены в футер, загружаются асинхронно. Ссылка на style.css там же, часть стилей вынес в <style></style>.

Может ли это быть связано с очередностью подгрузки стилей по отношению к скриптам? Меняю местами и вроде картина стабилизируется. Но достоверно знать не могу.

В общем, в сайтостроении я не очень силён, может что-то не так сделал... Прошу совета бывалых

дани мапов
На сайте с 06.09.2012
Offline
204
#1

jquery дважды подключается, из-за этого могут быть глюки.

<script type='text/javascript' async src='http://forexpapa.ru/wp-includes/js/jquery/jquery.js?ver=1.11.1'></script>

Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
Y1
На сайте с 13.09.2010
Offline
37
#2

Кхм, нелепый пропуск... Спасибо. Однако не помогло... Еще обнаружил, что в ситуациях, когда меню не загружается, также не работает поле поиска (должно выезжать при нажатии). Так что наверно проблема в яваскриптах

---------- Добавлено 21.07.2015 в 23:49 ----------

Убрал асинхронную загрузку jquery - вроде полет нормальный. Если у кого есть рабочий рецепт - поделитесь, пожалуйста. А то пальцем в небо...

totamon
На сайте с 12.05.2007
Offline
437
#3

css файлы вы зря вниз опустили, гугл этого точно не рекомендует, наоборот они должны быть в хедере и выше js... стили в коде тоже ни к чему...

Домены и хостинг https://8fn.ru/regru | Дедик от 3000р https://8fn.ru/73 | VPS в Москве https://8fn.ru/72 | Лучшие ВПС, ТП огонь, все страны! https://8fn.ru/inferno | ХОСТИНГ №1 РОССИИ https://8fn.ru/beget
Y1
На сайте с 13.09.2010
Offline
37
#4

Судя по примеру гугла, он рекомендует стили вообще ПОСЛЕ </html> ставить - https://developers.google.com/speed/docs/insights/OptimizeCSSDelivery

В принципе, я тоже не совсем поддерживаю эту логику, потому что сайт подгружается хоть и быстрее, но визуально коряво. Со стилями в коде переборщил, согласен - еще не придумал, как лучше сделать. Пока на этапе индексации решил прогнуться под поисковики, а там видно будет...

Перенес ссылку на стили выше js - даже балл добавило:) Спасибо!

В общем-то, и с менюхой вроде все ок, после снятия async

K
На сайте с 03.06.2015
Offline
45
#5

Это уже в 100500 раз наверно

yakor1988:
Судя по примеру гугла

это не пример гугла, это их рекомендации, которых они сами сроду не придерживались.

Ну хорошо, кто-нибудь реально хоть раз заглянул в коды страницы google.com чтобы увидеть всю правду жизни?

Первое - там вообще нет жиквери (а между тем гугля ее с удовольствием раздает)

Второе - там голимые стили инлайн

Третье - там голимые скрипты инлайн

В частности я скопипастил специально измерить сколько занимает континуальный блок стилей - получилось 24,0 KB (24*576 bytes) - это называется маленький CSS? И 24К - не все стили. Там еще несколько кусков в разных местах напихано.

Самое смешное что упомянутая страница-то в сущности пустая. Зачем там 24 кило стилей, куда они там идут вообще?

---------- Добавлено 22.07.2015 в 07:21 ----------

Для тех кто в танке. Современный тренд таков: обеспечить блок верстки стилями до и скриптами после при необходимости. В теории инлайн блоки стилей должны быть с атрибутом scoped, но пока что на него все кладут и гугля в том числе.

Стили и скрипты генерального плана можно либо класть в хедер инлайн, либо линковать к серверу в том же месте. Все остальное что требуется по контексту, выдается по контексту и идут они все лесом эти рекомендации. У нас есть браузер и этим обстоятельством надо пользоваться. Это не десктоп, это не ФШ который должен все свои лайбы загрузить сперва, чтоб потом вы смогли уменьшить фотку и закрыть этот магабаян.

---------- Добавлено 22.07.2015 в 07:27 ----------

Кстати для фрейморков и всяких там цмсок этот тренд тоже весьма выгодный. Весь сайт можно построить из виджетов по шаблону


<style><?php $this->assets('that_style.css'): ?></script>
<div>
<!-- код виджета -->
</div>
<script><?php $this->assets('that_script.js'); ?></script>

и не мучиться собирая все барахло в моделях.

---------- Добавлено 22.07.2015 в 07:32 ----------

Практический смысл инлайна в том, что бы не поднимать ради текста в пару десятков КБ всю эту обслугу - сервер. Эта несуразная задача и решается включением в ответ с сервера всего, что можно туда включить как текст.

Единственно что хтмл должен быть безупречным. Даже небольшая ошибка в кодах может срубить все стили и вызвать смешные глюки скриптов.

Возможно в прошлом, когда пакеты действительно терялись, так делать было опасно. Сейчас скорость и надежность тырнета такова, что можно забыть о потерях.

---------- Добавлено 22.07.2015 в 07:37 ----------

Кстати, вся страница гугля 48,31 KB (49 473 bytes) - то есть стилей в ней половина, вторая половина - скрипты. Остальное - хтмл. А вы про рекомендации...

MYSQL PHP JS HTML CSS SEO TXT США СССР

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий