Функция jQuery.fn скрыть/показать элемент
Здравствуйте
Есть пользовательская функция blink3, при помощи котрой можно поочередно скрывать/показывать элемент (элемент мигает). Функция не моя, поэтому ничего по существу сказать больше не могу. вот валидация инпутов, если инпут не прошел валидацию - рядом расроложенный span начинает "мигать" вопрос в следующим - как остановить скрытие/показ span, если конкретный инпут прошел валидацию (без setInterval и setTimeout) <button id="go">go</button><br> <span id="err1">error</span> <input type="text" id="inp1" /><br> <span id="err2">error</span> <input type="text" id="inp2" />
$("#go").click(function(){
if($("#inp1").val() != "тест"){
$("#err1").blink3(-1, 500);
}else{
$("#err1").blink3(0); //так остановить скрытие/показ не получается
}
if($("#inp2").val() != "тест"){
$("#err2").blink3(-1, 500);
}else{
$("#err2").blink3(0);
}
});
// функция blink3
// $("#myID").blink3(-1, 500);
// первый параметр (-1) - бесконечное количество скрытий/показов
// второй параметр (500) - продолжительность выполнения fadeTo
jQuery.fn.extend({
blink3: function (i, duration){
var c = i;
if(i===-1 || c-- > 0){
$(this).fadeTo(duration, 0.1, function (){
$(this).fadeTo(duration, 1, function (){
$(this).blink3(c, duration);
});
});
}
}
});
Что я пробовал сделать: 1) так остановить не получается - $("#err1").blink3(0, 0); 2) также пробовал еще один вариант - в функцию blink3 добавил условие if(run == false){return}; а в условии валидации инпута if($("#inp2").val() != "тест"){ $("#err2").blink3(-1, 500); }else{ run = false; } в этом варианте происходит остановка "мигания" всех спанов, а мне нужна остановка только конкретного спана.. |
Цитата:
.stop(true).css("opacity", "");
|
рони, большое спасибо!
//.noblink3();
$.fn.noblink3 = function(){
$(this).stop(true).css("opacity", "");
}
|
| Часовой пояс GMT +3, время: 17:06. |