Как выводить часть элементов страницы через javascript
Добрый день, дорогие жители форума.
У меня такая проблема. Начну немного из далека. Страницы обычно содержат очень много разных элементов, которые не обязательно надо показывать поисковикам, но для удобства пользователей они необходимы. Взять хотя бы те же банеры, служебные заметки и инструменты, дублирование навигации. Закрывать это в теги <noindex> не вариант, так как подходит только для Яндекса, да и то не факт, что он не учитывает собержимое. В общем единственный выход - выдавать содержимое через JS. Например банеры я победил: <script type="text/javascript"> document.write('<div id="baner" style="height:60px;width:468px;"><a href="..." target="_blank"><img src="..." alt="..." title="..." height="60" width="468"></a></div>'); </script> И просто этот кусок вставлен в html страницы, таким образом банер отображается, а поисковик все что снутри <script type="text/javascript"> ... </script> не видит. Отлично!!! Тоже самое можно провернуть с текстом, но только если он вытянут в одну строчку. Внимание вопрос! Как быть с большими кусками html-кода? Например, хочу выводить подобным методом навигацию: <ul> <li><a href="...">Главная</a></li> <li><a href="...">Регистрация</a></li> <li><a href="...">Статистика</a></li> <li><a href="...">Контакты</a></li> </ul> Но если просто этот кусок засадить в <script type="text/javascript"> ... </script> то ничего не отображается, это все просто пропадает со страницы, хотя в исходном коде присутствует. Так как я вообще ничего не понимаю в JS то и не знаю в чем проблема. Подскажите пожалуйста, люди добрые. Как поступить? |
пропадает с использованием document.write?
|
Цитата:
незнаю их бы я поисковику как раз бы и показывал.сайт ведь не только метатегам индексируется(точне уже по ним мало кто индексирует) но и (а именно)по ссылкам приводящим на другие страницы сайта |
Цитата:
А вытягивать в строку - не есть решение проблемы Цитата:
|
Victim не уподобляйтесь своему нику и пока забудьте что метод write() существует:
Цитата:
<script type="text/javascript"> window.onload = function(){ document.getElementById('div').innerHTML = '<ul>\ <li><a href="#">1</a></li>\ <li><a href="#">2</a></li>\ <li><a href="#">3</a></li>\ <li><a href="#">4</a></li>\ </ul>'; }; </script> <div id="div"></div> |
monolithed, Спасибо вам огромное! Сейчас буду пробовать!
А скажите, мне вот в голову мысль пришла, а что если собрать все вот эти куски, которые надо закрыть, в один js файл и потом подцепить его в шаблоне, а в нужных местах просто прописывать <div id="div"></div> Как это дело реализовать? Точнее как должен выглядеть внутри js файл. |
Цитата:
Цитата:
|
А можно ли как то реализовать так, чтобы не нужно было прописывать кроме строчки скрипта ничего более (я имею ввиду div в который будет вставляться код)
Для примера: У меня будет блок с фиксированным размещением, при клике на который будет выводиться форма (LiveOperator). Условие: Простое подключение в виде одного javascript файла и ничего более. Заранее спасибо за ответы. |
Afres, не совсем понятен вопрос. Если у Вас уже присвоен Id элементу, второй раз делать этого не надо.
|
Если я вас правильно понял, вы хотите вывести HTML-код с помощью javascript?
Вот так выводится ваша навигация из JS <body> <script type="text/javascript"> var z="<ul><li><a href='ссылка'>Главная</a></li><li><a href='ссылка'>Регистрация</a></li><li><a href='ссылка'>Статистика</a></li><li><a href='ссылка'>Контакты</a></li></ul>"; document.write(z); </script> </body> |
Часовой пояс GMT +3, время: 09:51. |