по второму пункту никакой мистики, всего скорее стоит технический пробел после ссылки, т.е. вот такой вот ...../a> <a.....
Отсюда и отступ у некоторых ссылок (ПС. код сайта не смотрел, но другого объяснения явно быть не может)
Lucas Kane, отнюдь, грабли как раз помогут понять то как нельзя делать, а информация все же не помешает. Вспоминаю себя и любимый метод ТЫКА, писал как мог, но писал и со временем опыт приходил. Единственно что сейчас много чего добавилось, раньше то таблицы решали, а теперь все на CSS переложили, этого хорошо, но влиться сложнее, а если учесть какие сегодня стандарты, то нужно изучать и HTML и CSS и JavaScript, и это все по минималке, зубрить конечно не стоит, хотя бы поверхностно, а там уже все само придет. Эти языки не сложные и главное тут последовательность, ибо JS учить без знания HTML и CSS бессмысленно
Сразу и не получится грамотно верстать, на это уйдет не один год, нужно много практики. Я свои первые потуги вспоминаю аж слезы наворачиваются (был 2006-2007 год) Сейчас единственно есть очень много инфы и готовых шаблонов, можно посмотреть как и что. А мы начинали с "народа" было печально, но интересно ))
Илья Шатохин, уже давно так ]).then()
До этого делал проверки в then, поэтому и оставил, но вопрос все равно не в этом и утечка не где то тут, а в sharp, так и не победил ее ))
Dark Hole, смотря какое меню, и где оно расположено. У меня на одном из сайтов вобще полностью формирование менюшки с категориями идет с помощью js и никто даже не догадается об этом =)
Ну а если все по стандарту, типичная менюшка, то да, не прокатит. Но и слово "Никак" неуместно =)
Максим Федоров, все не так просто как кажется) В общих чертах: когда идет просмотр страницы и пролистывание вниз в history записываются данные о загруженных URL, пользователь к примеру открыл 100 страниц и перешел в фулл пост, затем вернулся обратно, при моем подходе ему откроется страница на том месте где он закончил сеанс на этой странице, т.е. его вернет на исходную позицию, так же и при перезагрузки страницы (со всем содержимым). А вот если изменять url, пусть даже хеш дописывать, то придется костыль писать, и не думаю что это оправдает себя (по крайней мере ради какой то статистики). Фильтры есть, и используют get запросы в URL. В общем сайт не полностью на ajax, а лишь пагинация, которая при смене url не будет работать должным образом. Если можно было бы отправить в метрику данные при формировании результатов, это было бы просто супер, к примеру передать какую нибудь переменную со строкой нового URL
С хешом проблемы, у меня на сайте в историю записываются полученные URL, чтобы в случае возврата или перезагрузки страницы юзера опустило туда где он завершил сеанс, а с хешем не получится такого, точнее придется костыль писать. Ничего делать не буду, а то получается нужно сайт еще под метрику подстраивать, как то это стремно звучит
Дерзко))) Яндексоиды уже могли бы придумать возможность пушить URL в метрику, сейчас столько динамических сайтов. Видимо придется хештег добавлять после подгрузки)
2, 3 пункта я бы с радостью сделал, но я не пойму где утечка и утечка ли это вобще. Достаточно поверхностный ответ, пробежаться взглядом по функциям и сказать возможна ли тут утечка. Меня беспокоит конструкция в result(e, response), saveCache(e)
Как мной задумано было она выполняет result, а потом выполняет сохранение данных, по сути запрос уже выплюнул данные, а затем идет сохранение, вот меня и смущает завершается ли процесс должным образом после сохранения данных или он продолжает висеть и наслаивается в памяти.
Я плохо знаком с утечками, но по логике если идет утечка она будет постоянно расти и расти, сейчас смотрю по pm2 показывает не 1350, а 1320, т.е. она варьируется в этих пределах на данный момент (на сервере 8GB памяти). Может это банально нода в памяти хранит мусор который может еще пригодится, а если нет то по истечению какого то времени удалит его.
Сам сервер не глючит, сайт летает, формирование страницы происходит за 30ms, меня только смущают цифры потребления памяти, а может так все и должно быть?
За все остальное спасибо, надо будет глянуть по 1 пункту
Роман Кузнецов, я с библиотекой не знаком, но всего скорее там должны быть стандартные функции reload/refresh, думаю их и нужно использовать. Просто не очень понятно что именно надо, ведь $('.ilightbox').iLightBox(); и так инициализирует клик по картинке
Все потому что зачем учить два языка, когда можно управится только одним (JS). Я с PHP еще в 2011 году завязал, когда начал на node.js что то писать, мне он понравился. Нравится PHP пиши на нем, нравится JS пиши на нем, и этими двумя языками не ограничивается никто. И я бы не сказал что все за модой гонятся, просто удобно, один язык на бекенде и фронтенде
Aligatro, Ну по сути я об этом и писал, не беру в расчет специфические сайты, кто разрабатывает сайты для гос. компаний они в первую очередь сосредотачиваются на работе сотрудников и такие вопросы от ТС уж явно не последовало, да и недостающие костыли в любой момент можно дописать
https://yandex.ru/support/metrika/objects/hit.html