#javascript #jquery #modal-dialog
#javascript #jquery #модальный диалог
Вопрос:
Оптимизирован ли seo модальный диалог jQuery? Если нет, то какие изменения мы можем внести, чтобы содержимое внутри модального диалога могло быть легко прочитано сканером?
Заранее спасибо.
Редактировать: Извините, забыл упомянуть, что содержимое в модальном режиме поступает со стороны сервера. таким образом, он также использует ajax.
Ответ №1:
Если содержимое вашего диалога просто находится на странице и «превращается в модальный диалог jquery», то оно будет частью данных, к которым может получить доступ поисковый робот…Если содержимое загружается через ajax и т.д., То оно не будет проиндексировано, поскольку для заполнения html требуется запуск javascript.
...
<body>
<div id="MyModalDialog">
This is content I want the search engine to index. As it exists in the page without needing any javascript to exist here, it could be indexed.
</div>
<input value="Show Dialog" id="ShowDialog" />
</body>
...
Редактировать
Если для содержимого каким-либо образом требуется javascript и он еще не был частью исходного запроса, то в принципе можно предположить, что поисковый робот не будет его индексировать.
Правка 2
Если вам нужна стратегия для преодоления этого. Если вы использовали html-ссылку для открытия диалогового окна, при условии, что ссылка правильно открывает URL, у вас всегда может быть запасной вариант для браузеров / клиентов / сканеров, у которых не включен javascript, и тогда содержимое может быть проиндексировано…но он будет проиндексирован по исходному URL … по которому вы, возможно, не захотите, чтобы люди заходили на ваш сайт…
Что-то вроде этого:
<div id="dialog">
</div>
<a href="/page/to/index/content" class="open-dialog">Open Dialog</a>
и сценарий
$(function() {
$("a.open-dialog").click(function(e) {
e.preventDefault();
// get the url that this link is going to open
var url = $(this).attr("href");
// put contents in div and show dialog
$("#dialog").load(url).dialog({modal:true});
});
});
Таким образом, поисковый робот просто перейдет по ссылке из тега a на другой контент и, возможно, проиндексирует его … надеюсь, это имеет смысл … в противном случае код jquery отменит щелчок по ссылке и откроет содержимое в диалоговом окне.
Комментарии:
1. Извините, забыл упомянуть, что содержимое модального диалога поступает со стороны сервера. таким образом, он также использует ajax.
2. @Kin, может ли это поступать со стороны сервера во время создания браузером страницы «хост»?
3. @davidsleeps нет : ( это запрос пользователя, поэтому, когда пользователь нажимает на URL, данные извлекаются с сервера. Если я загружу его при загрузке страницы, сайт замедлится из-за огромного количества данных.
4. @Kin, вот возможный обходной путь… Возможно, я не понял это правильно… по сути, это псевдокод.
5. @davidsleeps Я думаю, что это определенно сработает. Меня беспокоит только то, что Google начнет отображать «/ страница / в / индекс / контент» в результатах поиска? Но я думаю, что могу в некоторой степени использовать вашу идею и модифицировать ее, чтобы она работала на меня. Спасибо.