Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.01.2012, 17:16
Аспирант
Отправить личное сообщение для Arkinsstoun Посмотреть профиль Найти все сообщения от Arkinsstoun
 
Регистрация: 04.01.2012
Сообщений: 40

нужна помощь по таймеру или что то в этом роде
Народ вообщем такое дело...

у меня есть 5 одинаковых ссылок с одинаковым классом при клике на одну из них произходит определённое анимационное действие...но если кликать быстро на все сразу то всё начинает вылазить за рамки дёрганье и т.д вообщем некрасивый бардак...

мне нужно что бы при клике на одну ссылку пока анимация не закончится другие не работали как это можно реализовать???
Ответить с цитированием
  #2 (permalink)  
Старый 04.01.2012, 17:24
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

Очевидно, не запускать новую анимацию, пока не закончится текущая.

http://api.jquery.com/animate/
Цитата:
.animate( properties [, duration] [, easing] [, complete] )

complete: A function to call once the animation is complete.
Ответить с цитированием
  #3 (permalink)  
Старый 04.01.2012, 17:34
Аспирант
Отправить личное сообщение для Arkinsstoun Посмотреть профиль Найти все сообщения от Arkinsstoun
 
Регистрация: 04.01.2012
Сообщений: 40

Сообщение от Octane Посмотреть сообщение
Очевидно, не запускать новую анимацию, пока не закончится текущая.

http://api.jquery.com/animate/
это немного не то! это функция которая запускается после анимации...как я её использую в моём случае? может я не понял чего то

и вот мой код поправте всё что не коректо! оно то всё работает но я не профи и знаю что полюбому костыли есть!

$open_slide.live("click",  // ловим клик на .open_slide через live()
function(e){

var this_os = $(this); // загоняем this в переменную
var ind_ws = this_os.closest($wrapper_slide).index(); //сохраняем в переменную index текущего wrapper_slide
if(this_os.data("active") != true){ //проверка активности
    
	e.preventDefault();	//запрет перехода ссылки
	
	this_os.data("active",true); // добовляем состояние текущему .open_slide
	
	console.time('create list'); 
	$wrapper_slide.filter("[rel=act]").removeAttr("rel").animate({"width":"30"});	// анимируем стартовую ширину .wrapper_slide с атрибутом, удаляем атрибут
	$slide.filter("[rel=act]").removeAttr("rel").animate({"opacity":"hide","width":""}); // анимируем стартовую ширину .slide  с атрибутом, удаляем атрибут
	console.timeEnd('create list');
	
	this_os.next($slide).attr("rel","act").delay(500).animate({"width":"600","opacity":"show"},600);// текущему .slide даём анимацию и атрибут
	this_os.closest($wrapper_slide).attr("rel","act").delay(500).animate({"width":"625"},300); // текущему .wrapper_slide даём анимацию и атрибут
		
    
	$open_slide.filter(":not(:eq("+ind_ws+"))").data("active",false); // удаляем состояние всех .open_slide	кроме текущего
	
	
			}<!--close if-->
		}<!--close function click-->
	);<!--close click-->
Ответить с цитированием
  #4 (permalink)  
Старый 05.01.2012, 14:55
Аватар для bret
Кандидат Javascript-наук
Отправить личное сообщение для bret Посмотреть профиль Найти все сообщения от bret
 
Регистрация: 04.10.2008
Сообщений: 128

1. Добавить переменную disableAnimation
2. Перед выполнением анимации проверять первую, если disableAnimation==true, то новую анимацию не начинать
3. При проигрывании анимации выставлять переменную в true, по окончании анимации - сбрасывать в false
__________________
я подыскиваю мозг... твой подойдёт
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
нужна помощь с очень простыми вещами babeshka Элементы интерфейса 35 13.01.2019 12:01
Нужна помощь с доработкой JS, исправить 1 баг, можно даже за $ Kanzaki Элементы интерфейса 18 14.09.2011 21:21
Сторонние библиотеки - быть или не быть? IIIEPJIOK Оффтопик 64 21.03.2009 19:39
Кроссдоменный GET запрос. Нужна помощь! notxcain AJAX и COMET 4 07.12.2008 20:55
Срочно нужна помощь Гость Общие вопросы Javascript 2 02.09.2008 14:13