|
|
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
Решил попробовать subj. Гружу части страниц по ajax, отслеживаю историю url, все хорошо. Но как быть с поисковыми серверами? если поисковик вышел на часть страницы, которую я подгружаю по ajax - как мне с нее подгрузить все остальное, чтобы казалось, что клиент пришел на конкретную страницу сайта, а не на кусок непонятного текста. Была великолепная библиотека fullajax - решала почти все проблемы, но почила в бозе... Подскажите please - куда смотреть. PHP использовать нехочется - желательно реализовать только на клиенте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 10:48 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
alex_lipесли поисковик вышел на часть страницы, которую я подгружаю по ajaxТак не бывает. Поисковик ходит лишь по тем ссылкам, которые объявлены как <a href>. alex_lipPHP использовать нехочется - желательно реализовать только на клиентеПоисковик ни о каких клиентах ничего не знает. Поисковик не разгребает и не интерпретирует скрипты, он работает ровно с тем, что отдает сервер на запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 10:58 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 11:00 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
===Так не бывает. Поисковик ходит лишь по тем ссылкам, которые объявлены как <a href>.== можно совместить <a href="pages/kollection.html" ax:id="maincontentdiv">Коллекции</a></span> есть и ссылка и загрузка по ajax страницы kollection.html в div maincontentdiv ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 11:09 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
== http://support.google.com/webmasters/bin/answer.py?hl=ru&hlrm=sv&hlrm=en&answer=174992 == тоже не то - одного Google мало , но спасибо!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 11:11 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
alex_lipможно совместить <a href="pages/kollection.html" ax:id="maincontentdiv">Коллекции</a></span> есть и ссылка и загрузка по ajax страницы kollection.html в div maincontentdivТак и делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 11:17 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
Antonariyalex_lipможно совместить <a href="pages/kollection.html" ax:id="maincontentdiv">Коллекции</a></span> есть и ссылка и загрузка по ajax страницы kollection.html в div maincontentdivТак и делать. Так вопрос в том и заключается - клиент через поисковик пришел на страницу pages/kollection.html - а там только текст. Можно редирект в заголовке прописать на main., но это не есть гут. Хорошо бы страницу правильно сформировать скриптом. Вот здесь не пойму как лучше сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 11:20 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
alex_lipAntonariyпропущено... Так и делать. Так вопрос в том и заключается - клиент через поисковик пришел на страницу pages/kollection.html - а там только текст. Что значит только текст? Почему нельзя сделать не только текст? alex_lipМожно редирект в заголовке прописать на main., но это не есть гут.Если весь сайт работает через main, то это логично. alex_lipХорошо бы страницу правильно сформировать скриптом. Вот здесь не пойму как лучше сделать.Сформировать kollection.html при открытии клиентом? Точно так же как main. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 11:39 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
На обычные ссылки по типу этой - <a href="pages/kollection.html">Коллекции</a> навесить javascript, который по ajax запрашивает целиком этот самый pages/kollection.html, затем вырезает <head>, <body> и прочее и вставляет только центральный контент, добавляя хэш в конце (#). Так работали библиотеки-костыли, точного названия уже не помню, толи fullajax, толи ajaxify. Поисковик же при открытии этой же ссылки получает целиком страницу. А если использовать серверные языки/технологии, то можно фильтровать по ajax-реквест-хедеру и в случаях ajax/не ajax отдавать страницу частично/целиком, а url менять через html5 history. Только зачем это всё статичному сайту на html, непонятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 13:59 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
st_stНа обычные ссылки по типу этой - <a href="pages/kollection.html">Коллекции</a> навесить javascript, который по ajax запрашивает целиком этот самый pages/kollection.html, затем вырезает <head>, <body> и прочее и вставляет только центральный контент, добавляя хэш в конце (#). Так работали библиотеки-костыли, точного названия уже не помню, толи fullajax, толи ajaxify. Поисковик же при открытии этой же ссылки получает целиком страницу. Я приблизительно так и делал. Сейчас хочу по другому. st_st А если использовать серверные языки/технологии, то можно фильтровать по ajax-реквест-хедеру и в случаях ajax/не ajax отдавать страницу частично/целиком, а url менять через html5 history. Только зачем это всё статичному сайту на html, непонятно. Можно поподробнее? Есть меню , центральная часть и футер. В середину что-то грузится по ajax(в зависимости от выбора меню). Это что-то находится в отдельных страничках. url я меняю через html5 history. Но подмена url - это видимость - если эту подмененную ссылку кто-то откроет отдельно - он увидит только текст на отдельной страничке - надо ее как-то скриптом обработать, чтобы при открытии динамически сформировать страницу с меню, футером и т.д.. КАК лучше это сделать? Прошу прощение за нубство, но я не профессиональный web программист. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 14:20 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
alex_lipесли эту подмененную ссылку кто-то откроет отдельно - он увидит только текст на отдельной страничке Ссылка, находящаяся в <a href>, ведёт на такую же полную страницу (с меню, хедером, футером), то есть пользователь при всём желании не сможет увидеть только текст на отдельной странице, страниц без меню, хедера и футера попросту несуществует, поэтому вопрос неясен, ссылка что в javascript, что в href абсолютно ничем не отличается. Отличается только заголовок, отправляемый браузером - он дописывается самим jquery, либо можно указать вручную - xmlhttp.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); Плюс использования серверного программинга в том, что можно фильтровать входящие запросы, то есть если в браузере отключен javascript или по ссылке пришёл бот (обычный GET-запрос, такой же, как мы набираем в адресной строке браузера), то сервер не делает ничего и отдаёт всю полностью целиком страницу как есть. Если же пользователь в браузере ткнул на ссылку, то срабатывает javascript и отправляет на сервер запрос, типа отдай мне эту же страницу, но без хедера, меню и футера (фильтруем по заголовку) и сервер отдаёт лишь ту часть страницы, которая нужна, ну а url меняется через pushState(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 14:43 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
st_stalex_lipесли эту подмененную ссылку кто-то откроет отдельно - он увидит только текст на отдельной страничке Ссылка, находящаяся в <a href>, ведёт на такую же полную страницу (с меню, хедером, футером), то есть пользователь при всём желании не сможет увидеть только текст на отдельной странице, страниц без меню, хедера и футера попросту несуществует, поэтому вопрос неясен, ссылка что в javascript, что в href абсолютно ничем не отличается. Отличается только заголовок, отправляемый браузером - он дописывается самим jquery, либо можно указать вручную - xmlhttp.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); Плюс использования серверного программинга в том, что можно фильтровать входящие запросы, то есть если в браузере отключен javascript или по ссылке пришёл бот (обычный GET-запрос, такой же, как мы набираем в адресной строке браузера), то сервер не делает ничего и отдаёт всю полностью целиком страницу как есть. Если же пользователь в браузере ткнул на ссылку, то срабатывает javascript и отправляет на сервер запрос, типа отдай мне эту же страницу, но без хедера, меню и футера (фильтруем по заголовку) и сервер отдаёт лишь ту часть страницы, которая нужна, ну а url меняется через pushState(). Ок. Дело в том, что если не использовать серверный программинг, то происходит немного наоборот - в основную страницу с меню и футером подгружается контент. И ссылка ведет не на полную страницу (иначе замучаешься обновлять сайт) - а на текст, который встраивается в главную страницу. И поэтому, когда из яндекса клиент попадает на проиндексированную страницу(или на сгенерированную скриптом ссылку) - он видит только текст(или срабатывает редирект или скрипт , который его перебрасывает или динамически формирует страницу). Мое субъективное мнение, что сайт с серверным программингом медленнее работает, чем сайт сделанный только на клиентских скриптах. Поэтому если нет базы данных - нехочется использовать серверное программирование. И вот снова вопрос - как лучше сделать этот самый редирект или динамически сформировать видимость, что клиент пришел на страницу с меню и футером. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 15:45 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
> И ссылка ведет не на полную страницу (иначе замучаешься обновлять сайт) - а на текст В php есть require_once(header.php), require_once(menu.php), require_once(footer.php), в java и asp.net есть мастерпейджи. И футер и хедер и меню хранится в одном единственном экземпляре, отдельные файлы создаются лишь для центральной контентной части, нет никаких мучений с обновлением сайта. > сайт с серверным программингом медленнее работает Да, одну наносекунду потеряете при открытии. Лучше уж повесить сайт "редиректом или динамически сформированной видимостью". p.s. off из темы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2013, 16:45 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
st_st> И ссылка ведет не на полную страницу (иначе замучаешься обновлять сайт) - а на текст В php есть require_once(header.php), require_once(menu.php), require_once(footer.php), в java и asp.net есть мастерпейджи. И футер и хедер и меню хранится в одном единственном экземпляре, отдельные файлы создаются лишь для центральной контентной части, нет никаких мучений с обновлением сайта. > сайт с серверным программингом медленнее работает Да, одну наносекунду потеряете при открытии. Лучше уж повесить сайт "редиректом или динамически сформированной видимостью". p.s. off из темы 1. Я говорю про обновление сайта написанного БЕЗ серверного программинга ===Лучше уж повесить сайт "редиректом или динамически сформированной видимостью".=== 2. Неумеете читать - не ругайтесь - редирект или динамически сформированной видимость - ТОЛЬКО при заходе клиента с поискового сервера или по прямой ссылке на отдельную страницу(не main) Да и смысл сравнивать - очевидно - вот пример ================== Добрый день. Сегодня спортивного интереса ради решил проверить, насколько php быстрее javascript, т.к. я всегда считал, что php быстрее. Сделал 2 одинаковых цикла на обоих языках, результат меня удивил. JavaScript: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. PHP: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. Всё делалось на денвере на одной машине. Результаты: Во всех браузерах PHP посчитал цикл за 1.05 секунды. А вот яваскрипт оказался шустрее (ну естественно IE подкачал) Firefox: JS = 33 мс Chrome: JS = 149 мс Opera: JS = 37мс IE: JS = 606мс ))) Safari: JS = 137мс В файрфоксе JS оказался быстрее php в 33 раза. ================================ Модератор: Предыдущее удаление поста было плохим намеком на то, что код надо обрамлять тегами? [IDV] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2013, 00:44 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
alex_lip, если так хочется сделать сайт "БЕЗ серверного программинга", то пишите клиентский код, что будет добавлять footer, header и menu на страницу при её загрузке. Подключите этот код к kollection.html и вуаля: при загрузке страницы по прямой ссылке он будет выполнятся, при загрузке ajax - нет. С уважением, Ваш КО. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.04.2013, 13:25 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
skyANAalex_lip, если так хочется сделать сайт "БЕЗ серверного программинга", то пишите клиентский код, что будет добавлять footer, header и menu на страницу при её загрузке. Подключите этот код к kollection.html и вуаля: при загрузке страницы по прямой ссылке он будет выполнятся, при загрузке ajax - нет. С уважением, Ваш КО. Спасибо за совет - но как мне определить по прямой ссылке открывается страница или через ajax ?? Код: javascript 1. 2. 3. 4. 5. 6. 7. Этот скрипт не всегда работает(новое окно или нет и т.д.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.04.2013, 16:59 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
alex_lipskyANAalex_lip, если так хочется сделать сайт "БЕЗ серверного программинга", то пишите клиентский код, что будет добавлять footer, header и menu на страницу при её загрузке. Подключите этот код к kollection.html и вуаля: при загрузке страницы по прямой ссылке он будет выполнятся, при загрузке ajax - нет. С уважением, Ваш КО. Спасибо за совет - но как мне определить по прямой ссылке открывается страница или через ajax ?? Код: javascript 1. 2. 3. 4. 5. 6. 7. Этот скрипт не всегда работает(новое окно или нет и т.д.)А для на хера? Я же Вам пишу, что по прямой ссылке скрипт выполнится, а при загрузке ajax-ом нет. Так что Вы можете тупо оставить: Код: html 1. 2. 3. Или Вы какой-то хитрый ajax используете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.04.2013, 19:25 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
Спасибо!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2013, 16:15 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
Кстати с jquery load - не все так однозначно - может скрипт выполнить. Лучше XMLHttpRequest(); использовать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2013, 17:13 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
alex_lipКстати с jquery load - не все так однозначно - может скрипт выполнитькакой еще скрипт? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2013, 17:19 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
alex_lipКстати с jquery load - не все так однозначно - может скрипт выполнить. Лучше XMLHttpRequest(); использоватьВ документации всё описано: когда скрипты выполняются, а когда нет. Смотрите параграф Script Execution . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2013, 17:26 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
Есть turbolinks / pjax - охренительные штуковины. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2013, 15:29 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
private охренительные штуковины.В плане? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2013, 17:18 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
они делают то что нужно автору, в 90% случаев. в оставшихся 10, когда нужны действительно сложные интерфейсы и мгновенная реакция - там да, прийдется делать с клаентсайд фреймворками и индексацией. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2013, 00:02 |
|
||
|
сайт на Html5 без перезагрузки страниц
|
|||
|---|---|---|---|
|
#18+
Использую history.js, но и в ней глюков хватает - Опера и хэш, хэш-линки остаются на прежние адреcа после смены url. pjax день поюзал, кэш при вперёд/назад непобедил (править исходники и отрубать там кэш лень) и выкинул, возможно там таже проблема с оперой, не помню уже. Другие не юзал, но не думаю что они чем-то лучше. На сервере всё просто - обычный asp.net mvc, отдача страницы либо целиком, либо только вьюшки по XHR-хедеру, вся возня именно с клиентом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2013, 03:53 |
|
||
|
|

start [/forum/topic.php?fid=22&msg=38218422&tid=1448428]: |
0ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
188ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
81ms |
get tp. blocked users: |
2ms |
| others: | 208ms |
| total: | 528ms |

| 0 / 0 |
