Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

Глобальные переменные vs IE (Scr1pt_)
Author Message
Scr1pt_
Заглянувший



Joined: 20 Sep 2009
Posts: 2
Карма: 0
   поощрить/наказать


PostPosted: Sun Sep 20, 2009 2:00 pm (написано за 7 минут 29 секунд)
   Post subject: Глобальные переменные vs IE
Reply with quote

Доброго времени суток всем.

Столкнулся с некоторой проблемой, которую разрешить самостоятельно, видимо, не в силах.
Собственно, код:
Code (JavaScript): скопировать код в буфер обмена
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
        <head>
                <script type = 'text/javascript'>
                        all = document.all || document.getElementsByTagName( '*' );
                </script>
        </head>
        <body>
                <span id = 'text0'"width: 100px; height: 50px; background: red;"
                        onclick = "all.text0.innerHTML = '';">
                        <b> Click me </b>
                </div>
        </body>
</html>
Кто-нибудь может объяснить, почему в IE и Opera переменная all, объявленная выше, в событии не видна, и, таким образом, событие не срабатывает?
Проблема имеет место быть в IE 5.01, IE 5.5, IE 6, IE 7, Opera 9, Opera 9.5, Opera 9.64. В Firefox всё в порядке.
Back to top
View user's profile Send private message
Миша Спларов
Участник форума



Joined: 17 Nov 2003
Posts: 821
Карма: 65
   поощрить/наказать

Location: Россия, Москва

PostPosted: Sun Sep 20, 2009 3:40 pm (спустя 1 час 40 минут; написано за 1 минуту)
   Post subject:
Reply with quote

Потому что к тому моменту когда выполняется js-код, dom-дерево ещё не построено. Ваш код будет работать если объявлять переменную all после загрузки документа.
Back to top
View user's profile Send private message
Scr1pt_
Заглянувший



Joined: 20 Sep 2009
Posts: 2
Карма: 0
   поощрить/наказать


PostPosted: Sun Sep 20, 2009 10:26 pm (спустя 6 часов 45 минут; написано за 2 минуты 2 секунды)
   Post subject:
Reply with quote

Попробовал переименовал переменную all во что-нибудь менее вызывающее - и всё заработало. Видимо, эта переменная с самого начала была зарезервирована.

Тему можно закрывать. Прошу прощения за беспокойство.

Вопрос решен, тему можно закрыть.
Back to top
View user's profile Send private message
Юрий Насретдинов
Модератор



Joined: 13 Mar 2003
Posts: 8642
Карма: 198
   поощрить/наказать

Location: 007 495

PostPosted: Sun Sep 20, 2009 10:48 pm (спустя 22 минуты)
   Post subject:
Reply with quote


М

Тема закрыта.
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   This topic is locked: you cannot edit posts or make replies. All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML