Javascript-форум (https://javascript.ru/forum/)
-   Opera, Safari и др. (https://javascript.ru/forum/css-html-browser/)
-   -   Opera 12.12 (1707): Uncaught exception: ReferenceError: Undefined variable: dateFrom (https://javascript.ru/forum/css-html-browser/34508-opera-12-12-1707-uncaught-exception-referenceerror-undefined-variable-datefrom.html)

Allan Stark 08.01.2013 11:08

Opera 12.12 (1707): Uncaught exception: ReferenceError: Undefined variable: dateFrom
 
Есть html файл, в хедере которого идет вызов пары js файлов и инициализация двух переменных:

<script type="text/javascript">
var dateFrom = "01.01.2013";
var dateTo = "31.01.2013";
</script>

Эти переменные затем используются в одном из js файлов.

Во всех браузерах (IE 8-10), Chrome, FF, Safari - все работает как надо и только в последней опере выкидывает ошибку:

Uncaught exception: ReferenceError: Undefined variable: dateFrom

Для проверки прогнал то же на 9-й опере (на виртуалке) - все отработало прекрасно.

Пробовал явно указать вызов переменных в js файле через window.dateFrom и window.dateTo - ругаться перестает, но переменные не инициализируются (не передаются стартовые значения), причем в этом случае естественно перестает работать в других браузерах...

Как сию напасть бороть или забить и ждать правки от "оперистов" ?

Deff 08.01.2013 11:30

Allan Stark,
Засунул переменные в файл скрипта http://hostjs-mybb2011.narod.ru/js/dateFrom.js
<!DOCTYPE>
<html>
<head>
<script type="text/javascript" src="http://hostjs-mybb2011.narod.ru/js/dateFrom.js"></script>
</head>
<body>

<script type="text/javascript">
  alert("dateFrom = "+dateFrom+"\ndateTo = "+dateTo)
 </script>
</body>
</html>

devote 08.01.2013 11:45

Цитата:

Сообщение от Allan Stark
Как сию напасть бороть или забить и ждать правки от "оперистов" ?

для начала нужно приводит листинг кода того что вы делаете.. Я больше чем уверен что проблема не в браузере а в ваших скриптах.

Allan Stark 08.01.2013 12:10



У меня немного другая ситуация, переменные инициализируются в html файле, а в внешнем js - используются, причем ругается именно на такую связку, иначе (инициализация в js, использование в html как у вас - и у меня работает).

Deff 08.01.2013 12:38

Цитата:

Сообщение от Allan Stark
переменные инициализируются в html файле

Полный код страницы выложите - или ссылку на Тестовую страницу в инете

Allan Stark 08.01.2013 18:08

Как ни странно, помогла инициализация переменных в хедере ДО вызова внешнего js файла...

<script type="text/javascript">
var dateFrom = "01.01.2013";
var dateTo = "31.01.2013";
</script>
<script type="text/javascript" src="test.js"></script>

Deff 08.01.2013 18:26

Цитата:

Сообщение от Allan Stark
Как ни странно, помогла инициализация пе

Это аксиома, а не странно, если загружаемый файл использует переменные, они должны быть определены до тега загрузки скрипта


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