Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Как исправить баг?) (https://javascript.ru/forum/jquery/13274-kak-ispravit-bag.html)

Spamol 23.11.2010 21:41

Как исправить баг?)
 
В продолжение этой темы http://javascript.ru/forum/jquery/83...na-jquery.html

Сделал аварийку, но она работает только в IE(

Использовал плагин jQuery Timers и вот код:
<div class="wrap">
    <div class="avariyka"><img src="images/left_avar.png" width="36" height="56" alt="правый поворотник" class="left_avar"><img src="images/right_avar.png" width="42" height="64" alt="левый поворотник" class="right_avar"></div>
   
</div>
<div class="uprav">
 	<fieldset class="avariy">
  	 <legend>Аварийка</legend>
 		<a href="#" id="avariy">Включить аварийку</a><br><a href="#" id="offavariy">Выключить аварийку</a>
   </fieldset>
</div>

и jQuery
$("#avariy").click(function() {
	if ($(".avariyka").css("display","none")) {  
			$(".avariyka").everyTime(800, 'timer2', function() {  
			$(this).css("display","block");
			}); 
		}  
	if ($(".avariyka").css("display","block")) {  
		$(".avariyka").everyTime(800, 'timer3', function() {  
			$(this).css("display","none");
			});  
		}
	});
	$("#offavariy").click(function() {
		$(".avariyka").stopTime('timer2');
		$(".avariyka").stopTime('timer3');
		$(".avariyka").css("display","none");
	});


Теперь вопрос, почему аварийка в идеале работает в IE, а в остальных браузерах один раз моргает и перестаёт? Как это исправить?

рони 24.11.2010 08:01

Цитата:

Сообщение от Spamol
Теперь вопрос, почему аварийка в идеале работает в IE, а в остальных браузерах один раз моргает и перестаёт? Как это исправить?

Вы запускаите два одинаковых таймера один на показ другой на скрытие, в идеале они должны перекрывать друг друга, может попробовать устанавливать один таймер с тригером.
для примера...
$(document).ready(function () {
    $("#avariy").click(function () {
            $(".avariyka").everyTime(800, 'timer2', function () {
            $(this).toggle();
        });
    })

    $("#offavariy").click(function () {
        $(".avariyka").stopTime('timer2');
        $(".avariyka").css("display", "none");
    });
});

Spamol 24.11.2010 23:10

Теперь вроде все работает корректно везде, спасибо)


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