JQuery скрыть / показать с ненулевой продолжительностью не работает в Firefox (но работает в Chrome)
Базовый код jQuery hide / show, показанный ниже, не работает в Firefox 29.0 на Ubuntu 12.04 LTS с рабочим столом Unity. Этот точно такой же код работает в Chrome 35.0.1916.114.
При выборе ссылки "скрыть этот div" FF начинает переход. При проверке с использованием Firebug атрибуты div меняются с
<div id="togglediv" style="display: block;">
в
<div id="togglediv" style="display: block; overflow: hidden;
height: 88px; padding: 0px; margin: 0px; width: 1422px; opacity: 1;">
Но больше ничего. Переход к "показу: нет;" никогда не бывает Ошибки не выбрасываются в консоль Firebug.
Я рассмотрел десятки SO вопросов, но, похоже, они имеют некоторые другие проблемы, связанные с бездействующим hide().
Если продолжительность удаляется или изменяется на 0, код работает как в FF, так и в Chrome. Почему бы ненулевой продолжительности перерыв в FF?
РЕДАКТИРОВАТЬ: Изменить код ниже, чтобы использовать версию CDN для облегчения тестирования. Проблема все еще остается. Даже после обновления до последней версии 2.1.1.
<html>
<head>
<!-- <script src="/media/js/jquery-1.11.1.js"></script> -->
<script src="http://code.jquery.com/jquery-2.1.1.min.js"></script>
<style>
#togglediv {
background: #cccccc;
}
</style>
</head>
<body >
<div style="display: block;" id="togglediv">
<p>jQuery Test</p>
<p><a id="hidelink" href="#">Hide this div</a></p>
</div>
<div id="bringback">
<p><a id="showlink" href="#">Bring it back</a></p>
</div>
<script type="text/javascript" >
// Your code goes here.
$( document ).ready(function() {
$( "#hidelink" ).click(function( event ) {
event.preventDefault();
$( "#togglediv").hide( 500 ); // works in FF if 0 or blank
});
$( "#showlink" ).click(function( event ) {
event.preventDefault();
$( "#togglediv").show( 500 ); // works in FF if 0 or blank
});
});
</script>
</body>
</html>
EDIT2: FF 29.0 выглядит нормально на Ubuntu 12.04.4 под KDE Platform версии 4.8.5. ТАК, это может быть проблема Ubuntu Unity, а не FF 29.0.
1 ответ
Следуя советам @Viscocent в комментариях выше, я обновил и перезапустил Firefox и Ubuntu. Проблема исчезла. Теперь этот вопрос необходимо отправить в Журнал невоспроизводимых результатов. Один урок: часто перезагружайте Firefox.