Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / сайт на Html5 без перезагрузки страниц / 25 сообщений из 26, страница 1 из 2
09.04.2013, 10:48
    #38218336
alex_lip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
Решил попробовать subj. Гружу части страниц по ajax, отслеживаю историю url, все хорошо. Но как быть с поисковыми серверами?
если поисковик вышел на часть страницы, которую я подгружаю по ajax - как мне с нее подгрузить все остальное, чтобы казалось, что клиент пришел на конкретную страницу сайта, а не на кусок непонятного текста. Была великолепная библиотека fullajax - решала почти все проблемы, но почила в бозе... Подскажите please - куда смотреть. PHP использовать нехочется - желательно реализовать только на клиенте
...
Рейтинг: 0 / 0
09.04.2013, 10:58
    #38218362
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
alex_lipесли поисковик вышел на часть страницы, которую я подгружаю по ajaxТак не бывает. Поисковик ходит лишь по тем ссылкам, которые объявлены как <a href>.
alex_lipPHP использовать нехочется - желательно реализовать только на клиентеПоисковик ни о каких клиентах ничего не знает. Поисковик не разгребает и не интерпретирует скрипты, он работает ровно с тем, что отдает сервер на запрос.
...
Рейтинг: 0 / 0
09.04.2013, 11:00
    #38218368
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
...
Рейтинг: 0 / 0
09.04.2013, 11:09
    #38218389
alex_lip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
===Так не бывает. Поисковик ходит лишь по тем ссылкам, которые объявлены как <a href>.==
можно совместить
<a href="pages/kollection.html" ax:id="maincontentdiv">Коллекции</a></span>
есть и ссылка и загрузка по ajax страницы kollection.html в div maincontentdiv
...
Рейтинг: 0 / 0
09.04.2013, 11:11
    #38218394
alex_lip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
== http://support.google.com/webmasters/bin/answer.py?hl=ru&hlrm=sv&hlrm=en&answer=174992 ==
тоже не то - одного Google мало , но спасибо!!!
...
Рейтинг: 0 / 0
09.04.2013, 11:17
    #38218411
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
alex_lipможно совместить
<a href="pages/kollection.html" ax:id="maincontentdiv">Коллекции</a></span>
есть и ссылка и загрузка по ajax страницы kollection.html в div maincontentdivТак и делать.
...
Рейтинг: 0 / 0
09.04.2013, 11:20
    #38218422
alex_lip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
Antonariyalex_lipможно совместить
<a href="pages/kollection.html" ax:id="maincontentdiv">Коллекции</a></span>
есть и ссылка и загрузка по ajax страницы kollection.html в div maincontentdivТак и делать.

Так вопрос в том и заключается - клиент через поисковик пришел на страницу pages/kollection.html - а там только текст.
Можно редирект в заголовке прописать на main., но это не есть гут. Хорошо бы страницу правильно сформировать скриптом. Вот здесь не пойму как лучше сделать.
...
Рейтинг: 0 / 0
09.04.2013, 11:39
    #38218474
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
alex_lipAntonariyпропущено...
Так и делать.

Так вопрос в том и заключается - клиент через поисковик пришел на страницу pages/kollection.html - а там только текст. Что значит только текст? Почему нельзя сделать не только текст?

alex_lipМожно редирект в заголовке прописать на main., но это не есть гут.Если весь сайт работает через main, то это логично.

alex_lipХорошо бы страницу правильно сформировать скриптом. Вот здесь не пойму как лучше сделать.Сформировать kollection.html при открытии клиентом? Точно так же как main.
...
Рейтинг: 0 / 0
09.04.2013, 13:59
    #38218762
st_st
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
На обычные ссылки по типу этой - <a href="pages/kollection.html">Коллекции</a> навесить javascript, который по ajax запрашивает целиком этот самый pages/kollection.html, затем вырезает <head>, <body> и прочее и вставляет только центральный контент, добавляя хэш в конце (#). Так работали библиотеки-костыли, точного названия уже не помню, толи fullajax, толи ajaxify. Поисковик же при открытии этой же ссылки получает целиком страницу. А если использовать серверные языки/технологии, то можно фильтровать по ajax-реквест-хедеру и в случаях ajax/не ajax отдавать страницу частично/целиком, а url менять через html5 history. Только зачем это всё статичному сайту на html, непонятно.
...
Рейтинг: 0 / 0
09.04.2013, 14:20
    #38218815
alex_lip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
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 программист.
...
Рейтинг: 0 / 0
09.04.2013, 14:43
    #38218860
st_st
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
alex_lipесли эту подмененную ссылку кто-то откроет отдельно - он увидит только текст на отдельной страничке

Ссылка, находящаяся в <a href>, ведёт на такую же полную страницу (с меню, хедером, футером), то есть пользователь при всём желании не сможет увидеть только текст на отдельной странице, страниц без меню, хедера и футера попросту несуществует, поэтому вопрос неясен, ссылка что в javascript, что в href абсолютно ничем не отличается. Отличается только заголовок, отправляемый браузером - он дописывается самим jquery, либо можно указать вручную - xmlhttp.setRequestHeader('X-Requested-With', 'XMLHttpRequest');

Плюс использования серверного программинга в том, что можно фильтровать входящие запросы, то есть если в браузере отключен javascript или по ссылке пришёл бот (обычный GET-запрос, такой же, как мы набираем в адресной строке браузера), то сервер не делает ничего и отдаёт всю полностью целиком страницу как есть. Если же пользователь в браузере ткнул на ссылку, то срабатывает javascript и отправляет на сервер запрос, типа отдай мне эту же страницу, но без хедера, меню и футера (фильтруем по заголовку) и сервер отдаёт лишь ту часть страницы, которая нужна, ну а url меняется через pushState().
...
Рейтинг: 0 / 0
09.04.2013, 15:45
    #38219008
alex_lip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
st_stalex_lipесли эту подмененную ссылку кто-то откроет отдельно - он увидит только текст на отдельной страничке

Ссылка, находящаяся в <a href>, ведёт на такую же полную страницу (с меню, хедером, футером), то есть пользователь при всём желании не сможет увидеть только текст на отдельной странице, страниц без меню, хедера и футера попросту несуществует, поэтому вопрос неясен, ссылка что в javascript, что в href абсолютно ничем не отличается. Отличается только заголовок, отправляемый браузером - он дописывается самим jquery, либо можно указать вручную - xmlhttp.setRequestHeader('X-Requested-With', 'XMLHttpRequest');

Плюс использования серверного программинга в том, что можно фильтровать входящие запросы, то есть если в браузере отключен javascript или по ссылке пришёл бот (обычный GET-запрос, такой же, как мы набираем в адресной строке браузера), то сервер не делает ничего и отдаёт всю полностью целиком страницу как есть. Если же пользователь в браузере ткнул на ссылку, то срабатывает javascript и отправляет на сервер запрос, типа отдай мне эту же страницу, но без хедера, меню и футера (фильтруем по заголовку) и сервер отдаёт лишь ту часть страницы, которая нужна, ну а url меняется через pushState().

Ок. Дело в том, что если не использовать серверный программинг, то происходит немного наоборот - в основную страницу с меню и футером подгружается контент. И ссылка ведет не на полную страницу (иначе замучаешься обновлять сайт) - а на текст, который встраивается в главную страницу. И поэтому, когда из яндекса клиент попадает на проиндексированную страницу(или на сгенерированную скриптом ссылку) - он видит только текст(или срабатывает редирект или скрипт , который его перебрасывает или динамически формирует страницу). Мое субъективное мнение, что сайт с серверным программингом медленнее работает, чем сайт сделанный только на клиентских скриптах. Поэтому если нет базы данных - нехочется использовать серверное программирование. И вот снова вопрос - как лучше сделать этот самый редирект или динамически сформировать видимость, что клиент пришел на страницу с меню и футером.
...
Рейтинг: 0 / 0
09.04.2013, 16:45
    #38219137
st_st
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
> И ссылка ведет не на полную страницу (иначе замучаешься обновлять сайт) - а на текст

В php есть require_once(header.php), require_once(menu.php), require_once(footer.php), в java и asp.net есть мастерпейджи. И футер и хедер и меню хранится в одном единственном экземпляре, отдельные файлы создаются лишь для центральной контентной части, нет никаких мучений с обновлением сайта.

> сайт с серверным программингом медленнее работает

Да, одну наносекунду потеряете при открытии. Лучше уж повесить сайт "редиректом или динамически сформированной видимостью".

p.s. off из темы
...
Рейтинг: 0 / 0
10.04.2013, 00:44
    #38219612
alex_lip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
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.
var start = new Date();

var x=0;
for(var i=0;i<10000000;i++){
    x++;
}

var end = new Date();
console.log('Скорость ' + (end.getTime()-start.getTime()) + ' мс');



PHP:

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
$begin_time = time() - 1272000000 + floatval(microtime());

$x=0;
for($i=0;$i<10000000;$i++){
    $x++;
}

$end_time = time() - 1272000000 + floatval(microtime()) - $begin_time;
echo $end_time;



Всё делалось на денвере на одной машине.

Результаты:

Во всех браузерах PHP посчитал цикл за 1.05 секунды. А вот яваскрипт оказался шустрее (ну естественно IE подкачал)

Firefox: JS = 33 мс

Chrome: JS = 149 мс

Opera: JS = 37мс

IE: JS = 606мс )))

Safari: JS = 137мс

В файрфоксе JS оказался быстрее php в 33 раза.
================================
Модератор: Предыдущее удаление поста было плохим намеком на то, что код надо обрамлять тегами?
[IDV]
...
Рейтинг: 0 / 0
12.04.2013, 13:25
    #38223386
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
alex_lip, если так хочется сделать сайт "БЕЗ серверного программинга", то пишите клиентский код, что будет добавлять footer, header и menu на страницу при её загрузке.
Подключите этот код к kollection.html и вуаля: при загрузке страницы по прямой ссылке он будет выполнятся, при загрузке ajax - нет.

С уважением, Ваш КО.
...
Рейтинг: 0 / 0
12.04.2013, 16:59
    #38223829
alex_lip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
skyANAalex_lip, если так хочется сделать сайт "БЕЗ серверного программинга", то пишите клиентский код, что будет добавлять footer, header и menu на страницу при её загрузке.
Подключите этот код к kollection.html и вуаля: при загрузке страницы по прямой ссылке он будет выполнятся, при загрузке ajax - нет.

С уважением, Ваш КО.
Спасибо за совет - но как мне определить по прямой ссылке открывается страница или через ajax ??
Код: javascript
1.
2.
3.
4.
5.
6.
7.
<script type="text/javascript">
if (document.referrer.search('google')==-1){
    alert('Not using Google');
} else {
    alert('Yes, from Google');
}
</script>



Этот скрипт не всегда работает(новое окно или нет и т.д.)
...
Рейтинг: 0 / 0
12.04.2013, 19:25
    #38224037
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
alex_lipskyANAalex_lip, если так хочется сделать сайт "БЕЗ серверного программинга", то пишите клиентский код, что будет добавлять footer, header и menu на страницу при её загрузке.
Подключите этот код к kollection.html и вуаля: при загрузке страницы по прямой ссылке он будет выполнятся, при загрузке ajax - нет.

С уважением, Ваш КО.
Спасибо за совет - но как мне определить по прямой ссылке открывается страница или через ajax ??
Код: javascript
1.
2.
3.
4.
5.
6.
7.
<script type="text/javascript">
if (document.referrer.search('google')==-1){
    alert('Not using Google');
} else {
    alert('Yes, from Google');
}
</script>



Этот скрипт не всегда работает(новое окно или нет и т.д.)А для на хера? Я же Вам пишу, что по прямой ссылке скрипт выполнится, а при загрузке ajax-ом нет. Так что Вы можете тупо оставить:
Код: html
1.
2.
3.
<script type="text/javascript">
  alert('Yes, from Google');
</script>

Или Вы какой-то хитрый ajax используете?
...
Рейтинг: 0 / 0
13.04.2013, 16:15
    #38224432
alex_lip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
Спасибо!!!
...
Рейтинг: 0 / 0
15.04.2013, 17:13
    #38226345
alex_lip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
Кстати с jquery load - не все так однозначно - может скрипт выполнить. Лучше XMLHttpRequest(); использовать
...
Рейтинг: 0 / 0
15.04.2013, 17:19
    #38226358
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
alex_lipКстати с jquery load - не все так однозначно - может скрипт выполнитькакой еще скрипт?
...
Рейтинг: 0 / 0
15.04.2013, 17:26
    #38226374
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
alex_lipКстати с jquery load - не все так однозначно - может скрипт выполнить. Лучше XMLHttpRequest(); использоватьВ документации всё описано: когда скрипты выполняются, а когда нет. Смотрите параграф Script Execution .
...
Рейтинг: 0 / 0
17.04.2013, 15:29
    #38229385
private
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
Есть turbolinks / pjax - охренительные штуковины.
...
Рейтинг: 0 / 0
17.04.2013, 17:18
    #38229656
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
private охренительные штуковины.В плане?
...
Рейтинг: 0 / 0
19.04.2013, 00:02
    #38231839
private
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
они делают то что нужно автору, в 90% случаев. в оставшихся 10, когда нужны действительно сложные интерфейсы и мгновенная реакция - там да, прийдется делать с клаентсайд фреймворками и индексацией.
...
Рейтинг: 0 / 0
19.04.2013, 03:53
    #38231917
st_st
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сайт на Html5 без перезагрузки страниц
Использую history.js, но и в ней глюков хватает - Опера и хэш, хэш-линки остаются на прежние адреcа после смены url. pjax день поюзал, кэш при вперёд/назад непобедил (править исходники и отрубать там кэш лень) и выкинул, возможно там таже проблема с оперой, не помню уже. Другие не юзал, но не думаю что они чем-то лучше. На сервере всё просто - обычный asp.net mvc, отдача страницы либо целиком, либо только вьюшки по XHR-хедеру, вся возня именно с клиентом.
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / сайт на Html5 без перезагрузки страниц / 25 сообщений из 26, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]