Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.08.2009, 16:38
Интересующийся
Отправить личное сообщение для andikk Посмотреть профиль Найти все сообщения от andikk
 
Регистрация: 14.08.2009
Сообщений: 13

Вернуть в строковую переменную текст между тегами h1
Люди, нарисуйте, пожалуйста примерный скрипт, который позволял бы вернуть в стринговую переменную текст страницы обрабленный тегами h1.

Текст в котором нужно искать h1 обрамлен тегами <div id="txt"> </div>

Т.е. грубо говоря есть хтмл страница типа:

<div id="txt">

<h1>Нужно вернуть вот этот текст в переменную</h2>

</div>
Ответить с цитированием
  #2 (permalink)  
Старый 14.08.2009, 16:42
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от andikk
<h1></h2>
Видимо опечатка?!

Так чтоли:
var StringVar=document.getElementById('txt').getElementsByTagName('h1')[0].firstChild.nodeValue;
Ответить с цитированием
  #3 (permalink)  
Старый 14.08.2009, 16:46
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

var h1s=document.getElementById('txt').getElementsByTagName('h1');
var h1_strings=[];
for(var i=0;i<h1s.length;i++){
h1_strings[i]=h1s[i].innerHTML;
}

в h1_strings будет содержатся массив всех строк содержащихся во всех H1 внутри <div id="txt">.
Если таковых только один, то только один элемент и будет(h1_strings[0])
Ответить с цитированием
  #4 (permalink)  
Старый 14.08.2009, 16:53
Интересующийся
Отправить личное сообщение для andikk Посмотреть профиль Найти все сообщения от andikk
 
Регистрация: 14.08.2009
Сообщений: 13

Ух ты работает! Спасибо!
Еще был бы безмерно благодарен если бы подсказали как заменить содержимое тега <title> полученным значением переменной.

Попытался просто в <title> всттавить код
<SCRIPT>
var StringVar=document.getElementById('txt').getElemen tsByTagName('h2')[0].firstChild.nodeValue;
document.write(StringVar);
</SCRIPT>

но что-то в заголовке пишется код программы а не значение StringVar
Ответить с цитированием
  #5 (permalink)  
Старый 14.08.2009, 16:57
Интересующийся
Отправить личное сообщение для andikk Посмотреть профиль Найти все сообщения от andikk
 
Регистрация: 14.08.2009
Сообщений: 13

Не совсем правильно описал нужно в тег <title> зменить на текст
StringVar + <!--#include file="title.html" -->
Ответить с цитированием
  #6 (permalink)  
Старый 14.08.2009, 17:00
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

document.title=document.getElementById('txt').getElementsByTagName('h2')[0].firstChild.nodeValue;
Ответить с цитированием
  #7 (permalink)  
Старый 14.08.2009, 17:02
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от andikk
Попытался просто в <title> всттавить код
Как вы собираетесь получать значение того, чего нет?!
Ответить с цитированием
  #8 (permalink)  
Старый 14.08.2009, 17:09
Интересующийся
Отправить личное сообщение для andikk Посмотреть профиль Найти все сообщения от andikk
 
Регистрация: 14.08.2009
Сообщений: 13

document.title=document.getElementById('txt').getE lementsByTagName('h2')[0].firstChild.nodeValue;

всё получилось, с помощью этого кода.
Огромное спасибо.

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

Еще раз спасибо.

Последний раз редактировалось andikk, 14.08.2009 в 17:13.
Ответить с цитированием
  #9 (permalink)  
Старый 14.08.2009, 17:16
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

andikk,
если вы так парились только из-за поисковиков, то зря.
гарантии, что они выполнят этот код - ноль.
скорее всего они вообще не смогут учестть этот факт
поэтому заголовки надо менять при генерации документа на сервере.
я уж не говорю о том, что ИМХО title страницы мало будет влиять на индексацию
Ответить с цитированием
  #10 (permalink)  
Старый 14.08.2009, 17:19
Интересующийся
Отправить личное сообщение для andikk Посмотреть профиль Найти все сообщения от andikk
 
Регистрация: 14.08.2009
Сообщений: 13

Да, пожалуй Вы правы, в исходнике страницы все равно не сформированный скриптом заголовок.

Насколько title влияет на индексацию я сужу по памятки для веб-мастеров от гугла, там они рекомендуют делать для каждой страницы уникальны заголовок....
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
При клике ссылки, открыть DIV блок, и при клике ещё раз, закрыть его Simon Общие вопросы Javascript 59 28.05.2017 17:31
Вопрос: И опять про offsetLeft... sigurd Общие вопросы Javascript 11 04.10.2010 14:06
Вопрос по относительному позиционированию DIV XPOMOB (X)HTML/CSS 11 15.07.2009 17:02