Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> простой пример c dom. не работает в opera и ff, а в ie все норм... 
:(
    Опции темы
semi
Дата 5.6.2007, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 10.12.2006
Где: ой, все сложно...

Репутация: нет
Всего: нет



собственно...
в ie все нормально, алерт выдает 11111. а ff и opera молчат :( 
Подскажите, в чем может быть проблема?
Код

<html>
    <head>
    <script language=javascript>        
        function ttt (){
            var myBody = document.getElementsByTagName("body");        
            var p = myBody[0].childNodes[0].firstChild.nodeValue;
            alert(p);
        }

    </script>
    </head>
    <body>
        <p>11111</p>

    <script language=javascript>
        ttt();
    </script>
    </body>
</html>

p.s. нужно именно в такой последовательности, сначала ищем body, затем его первого чилдрена и его содержимое... т.е. 
Код

var myP = document.getElementsByTagName("p");        
alert(myP[0].firstChild.nodeValue);

не подходит :(
PM MAIL ICQ   Вверх
Zeroglif
Дата 5.6.2007, 23:57 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 644
Регистрация: 22.9.2005

Репутация: 28
Всего: 66



Если алертом начать проверять, кто такой childNodes[0], ты увидишь, что это не то, что нужно. Сожми код (переносы и пробелы долой) и всё будет работать.

Код

<body><p>11111</p>





PM MAIL WWW   Вверх
Rodman
Дата 6.6.2007, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: нет
Всего: 122



от Semi

A если я не могу сжать, есть какой нить выход? Подобная конструкция используется при разборе входящего xml-документа, a нa eгo сжатие я нe мoгу повлиять.
PM MAIL WWW Skype GTalk YIM MSN   Вверх
Zeroglif
Дата 6.6.2007, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 644
Регистрация: 22.9.2005

Репутация: 28
Всего: 66



Было сказано, что

Цитата(semi @  5.6.2007,  23:28 Найти цитируемый пост)
нужно именно в такой последовательности, сначала ищем body, затем его первого чилдрена и его содержимое


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

Если же порядок обращения можно всё-таки поменять, то надо просто учитывать, что gecko видит в DOM "пустоты", для него нужная вам нода будет childNodes[1], а нет в childNodes[0], ну, или другим способом достаньте ноду, более универсальным (по тегу, по id)...



PM MAIL WWW   Вверх
semi
Дата 6.6.2007, 14:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 10.12.2006
Где: ой, все сложно...

Репутация: нет
Всего: нет



Цитата(Zeroglif @  6.6.2007,  13:13 Найти цитируемый пост)
Если же порядок обращения можно всё-таки поменять, то надо просто учитывать, что gecko видит в DOM "пустоты", для него нужная вам нода будет childNodes[1]

будем знать... 

Zeroglif, спасибо за помощь. 
PM MAIL ICQ   Вверх
lexxICON
Дата 6.6.2007, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 27.1.2007

Репутация: 2
Всего: 2



К примеру..
Код

       function ttt (){
            var myBody = document.getElementsByTagName("body")[0], p = myBody.firstChild;
        while (p && p.nodeType != 1) { 
            p = p.nextSibling;
        }
        if (p && p.firstChild) { 
            alert(p.firstChild.nodeValue);
        } else { 
            //Exception
        }
        }

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0548 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.