“Wallpapers[ru]” — полный AJAX

К предыдущим изменениям добавлен перевод сайта “Wallpapers[ru]” на полную AJAX-навигацию!

То есть переходы по ссылкам внутри сайта происходят без полной перезагрузки страницы, а лишь заменой контента (почти как в уютнентком «В Контактике»).

Для сохранения всех правильных адресов и прочего СЕО этом используется HTML5 History API, то есть доступна эта прелесть будет только в современных браузерах, в старых браузерах обновление страниц происходит в стандартном режиме.

Также в настройках пользователя появилась соответствующая опция.

Правки были не столько в самом LS, сколько в шаблоне.

При переходах появляется миловидный индикатор загрузки в центре экрана:

Индикатор загрузки AJAX

Не знаю, что ещё добавить… Надеюсь, что вам понравится!!!

UPDATE: С помощью многократных испытаний и секундомера было выяснено, что AJAX-блуждания по страницам быстрее, чем обычные, вопреки сомнениям. Видимо, сыграло то, что браузеру не надо переинициализировать head документа, CSS, JS и всё сопутствующее.

42 комментария

avatar
Какой-то «звиздец» с окнами: www.diigo.com/item/image/1f8ga/4j3m
avatar
Спасибо, проблема кроссбраузерности, исправил!
avatar
Класс!
Извините, скажите, поэалуйста, чат — это ваша собственная разработка или нет?
avatar
Собственная
avatar
А не планируете сделать его публичным? :)
avatar
Пока нет. Уже предлагали. Тут программирования, в принципе, на один вечер.
avatar
Ну это кому как… ;)
avatar
Уведомления от вас уходит прямиком в спам.
gmail
avatar
Ну, значит, надо сказать кому-то спасибо за это… Всер ресиведы, ретёрны и фромы совпадают, даже мейл ру пускает (а он самый жёсткий анти-спамщик).
avatar
Думаю не в этом дело, у вас в хедере писем:
Received-SPF: neutral (google.com: 217.112.42.2 is neither permitted nor denied by best guess record for domain of mail@wallpapers.ru)
Должно быть так:
Received-SPF: pass (google.com: domain of webmaster@livestreet.ru designates 88.198.54.11 as permitted sender)
Добавьте в dns zone file TXT запись с spf с вашим ip сервера и будет тип топ.
И прописать Reverse DNS entry, конечно же, если не прописана.
avatar
Большое спасибо, сейчас поковыряю!
avatar
не подумайте что хочу обругать, но в вашем случае аякс не спасает, ведь вы все равно запрашиваете полностью отрендеренную страницу, то есть не экономите ни серверное время, ни траффик.

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

а наполнение отличное, желаю вам развития!
avatar
Запрашиваю, да, всё так и задумано, чтобы сохранить всё СЕО, все урлы и не мучатся.

! АДЖАКС! сделан только для симпотичности и для более скорого гуляний по страницам (грузится быстрее, чем полная перезагрузка, это однозначно).
avatar
Потестил, с АДЖАКСОМ действительно быстрее. А если учитывать, что при обычных переходах ещё прелоадер срабатывает (а юзер-то его видит, то для юзера всё значительно быстрее.

Спасибо за предложение со страницами, но я в принципе сам представляю как это сделать, просто пока надо отдохнуть ) Да и обсудить с дизайнером.
avatar
имхо, было бы комфортнее, если бы страница грузилась с аяксом, а контент уже после отображения новой страницы подгружался. лично мне приятно осознавать, что я вижу процесс загрузки контента, а loader мне ни о чем не говорит, не ясно, будет ли страница или нет.

Кстати, вконтакте именно так и сделано. Весь изменяемый контент у них подгружается уже после того, как страница была открыта аяксом.
avatar
В контакте всё то же самое вроде, только лоадера нет. Ещё и прыгает всё непонятно как )
avatar
прыгает по той причине, что я написал
avatar
Что значит «грузилась с аяксом»? Аджакс не грузится, это технология.
avatar
не надо так буквально воспринимать слова, понятно, что аякс никуда не грузится, «грузилась с аяксом» означает загрузку с применением технологии. В следующий раз буду писать развернуто.
avatar
Ладно, прошу прощения, просто поднапрягся из-за одной кроссбраузерной вещи и был не в себе, а вообще спасибо за пожелания. Мне самом интересно, есть ли у мутулза функция одновременной адоптации полученного документа, не сразу.

Просто в ВК 40 разработчиков, они могут позволить писать себе такие функции самостоятельно, а тут я 1 + этот сайт хобби.
avatar
:) удачи в развитии)
avatar
Спасибо, вам тоже!
avatar
Все очень круто сделано! Приятно бродить по вашему сайту)
avatar
Спасибо, рад слышать!
avatar
Очень классно Молодцы)))
avatar
Вам бы еще на главной сделать навигацию страниц в виде автоматической подзагрузки, например как на google images
avatar
Может быть, тогда только надо подумать как это всё приспособить с лайвстритом. В принципе, лайвстрит под такие вещи не рассчитан, чтобы идеально отрабатывать аджакс без лишних загрузок надо либо сильно перекоживать, либо кодить с нуля.
avatar
Согласен с Вами.

Хотелось бы что-нибудь вроде.

LS::init();

if($req = SomeClass::getRequest()) {
   //работаем
   //отвечаем
}

LS::shutdown();


Впрочем это не проблема ЛС, точнее проблема не только ЛС, в том же ZF или еще где очень постараться надо, чтобы архитектуру под это построить.

ЗЫ Сайт, кстати, интересный, удачи в продвижении )
avatar
Когда-нибудь будет. Сейчас от этого не уйти, мне кажется.
avatar
Написал и встроил до кучи ещё одну галерею типа как на LookAtMe.

Новый вид галереи
www.wallpapers.ru/ocherednaya-galereya/
avatar
сделайте чтоб не прыгало, и напишите плагин для сообщества. Я точно куплю, это давно надо было сделать.
avatar
Хехе?) Как сделать, чтоб не прыгало-то? На лукэтми и то прыгает, а в него денег вложено во много раз больше, чем сюда, и программистов там, уверен, не 1 человек.
avatar
Уверен, решение есть, надо просто подумать :) и все получится
avatar
Сделал плавненько, как вам?
avatar
Шикарно!
комментарий был удален
avatar
Яркий пример неправильного и неразумного использования аякса. Смысла от него никакого. Аякс должен лишь дополнять функционал. Даже бесконечная прокрутка допустима лишь в самых редких случаях (например твиттер). Во Вконтакте используются куда более глубокие разработки, чем полная подгрузка страницы с сервера.
  • Anf
  • 0
avatar
В принципе со всем согласен, но хуже не стало, страницы открываются быстрее, + wow-эффект присутствует, к тому же меня не 50 человек, как там, а всего один, так что считаю подобное использование вполне оправданным.
avatar
Ну ок) Меня все же лично Аякс бесит, и во вконтакте тоже, ибо толку от него 0. Сейчас уже нередко можно встретить посты аля: долой пагинацию, даешь бесконечную прокрутку. Это очень разражает.
avatar
Кстати, зарегистрированные пользователи могут поставив галочку в настройках избавится от аджакса, так что в этом плане я старался быть демократичен.
avatar
Никогда бы не подумал что это LS ;) И так еще: чат когда сворачивается, он не сворачивается- а просто прячется вниз, исправьте как нибудь.
avatar
Так так и планировалось вроде.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.