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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Глюк с setInterval при нажатии back в Opera 9.22, интервал перестаёт работать ( 
:(
    Опции темы
Greendrake
Дата 22.7.2007, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Обнаружил весьма престранный глюк в Opera 9.22 (в Opera 8.5 с этим нормально).
Имеем тестовую страницу:

Код

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Opera setInterval bug?</title>
    <script type="text/javascript" language="JavaScript">
      function foo(){
        document.getElementById('foo').innerHTML = String(Math.random()).substr(2);
      };
    </script>
  </head>
  <body onload="window.setInterval(foo, 200);">
    <div id="foo"></div>
    <hr>
    <a href="#hash">Hash</a>
    <hr>
    <input type="button" value="Alert" onclick="alert('Alert')">
  </body>
</html>


При её загрузке устанавливается интервал, через который вызывается функция. Тот факт, что интервал работает, отображается меняющимися цифрами на странице.

Нажимаем на ссылку Hash. После этого жмём кнопку Back браузера. Видим: адрес вернулся в исходное положение (без якоря), но интервал перестал работать! Чтобы продолжить его работу, оказывается достаточным вызвать и закрыть окно сообщения (жмём кнопку Alert для этого).

Сей глюк я обнаружил в версиях Opera 9.22 (последняя на текущий момент) и 9.20. В версии 8.5 глюка нет (интервал продолжает работать при нажатии Back). В FireFox (и даже в Safari) этой проблемы нет. IE не актуален, т. к. в данном примере он не заносит переход по хешу в history.

Будут какие-нибудь соображения касательно причин и способов борьбы с сабжем-глюком?
PM MAIL   Вверх
Zeroglif
Дата 23.7.2007, 00:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Greendrake

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


 




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


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

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