Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Видимость переменных (https://javascript.ru/forum/misc/2886-vidimost-peremennykh.html)

HelpeR 21.02.2009 19:54

Видимость переменных
 
Такая ситуация.
<script src='http://domain/file.php?id=23'></script>
<script src='http://domain/file2.js'><script>
file.php возвращает js код например var a = 'hello';
а file2.js следующий код alert(a);
Так.
Если страница чистая то alert срабатывает. А если вставляю этот код на какой нибудь сайт то выходит ошибка udefined. И все это глючит только в ие6

Gvozd 21.02.2009 20:24

рискну предположить, что скрипты грузятся асинхронно(так вообще и происходит), и посему алерт может произойти раньше назначения переменной.
попробуйте:
document.onload=function(){alert(a);}

должен вывести

HelpeR 21.02.2009 20:28

ок спасибо попробую. Хотя тогда почему нормально работает, когда чистая страница? думаете file.php успевает срабатывать

Gvozd 21.02.2009 20:32

все это довольно неопределенно.
нельзя сказать наврерняка, какой загрузится и сработает раньше

HelpeR 21.02.2009 20:47

если не ошибаюсь то интерпретатор кажется не начинает грузить следующий js код пока не загрузиться предыдущий

HelpeR 21.02.2009 20:51

и еще тут onload нельзя, т.к. потом происходит document.write

Gvozd 21.02.2009 21:29

кхм.
и вправду
тогда не знаю


Часовой пояс GMT +3, время: 00:27.