13.01.2011, 23:50
|
Аспирант
|
|
Регистрация: 15.03.2008
Сообщений: 91
|
|
Приведенная выше копипаста ни как не относится к обсуждаемому вопросу.
Я четко спросил, КАК сделать синхронную анимацию в JQuery.
Вместо того, что бы помочь или сказать не знаю как/пройти мимо, дознаешся до вещей, напрямую к вопросу не относящихся, заранее с установкой к чему нибудь придраться, и сказать, что ты бы сделал по другому.
Способ навигации - часть интерфейса, а о интерфейсе как известно разводят самые многостраничные холивары.
А ты тонкий тролль.
|
|
14.01.2011, 01:20
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
Сообщение от Logo
|
А ты тонкий тролль.
|
ты первый, кто меня так назвал а в дальнейшем просто учти, что меня не интересует, ЧТО ты спросил. Меня интересует, как лучше всего решить твою проблему
UPD еще немного копипасты
Последний раз редактировалось x-yuri, 14.01.2011 в 02:05.
|
|
14.01.2011, 13:08
|
Аспирант
|
|
Регистрация: 15.03.2008
Сообщений: 91
|
|
Моя проблема в том, что анимация скролла, и анимация появления контента происходит не синхронно. Ни сообщения по теме нет, а только флуд и флейм.
|
|
19.01.2011, 23:34
|
Аспирант
|
|
Регистрация: 15.03.2008
Сообщений: 91
|
|
Так.
Во-первых. Обсуждаемая опция - часть интерфейса. А на почве интерфейса происходят самые сильные холивары. vi[m] vs emacs, vim/emacs vs нормальные редакторы, редакторы vs IDE, GNOME vs KDE, браузерные войны etc. Хорошо/плохо здесь ориентируется на личные предпочтения, привычку, и не более.
Во-вторых ты действительно не привел ни одного аргумента.
Сообщение от x-yuri
|
Не надо мешать пользователю читать сайт, принимать за него решения.
|
Сферическое, в вакуме. Под это "определение" можно подогнать все что угодно.
Сообщение от x-yuri
|
Например, я просматриваю список новостей и щелкаю на "показать еще", чтобы подгрузились еще новости, пока я дочитаю то, что уже есть.
|
Контента мало, новости подгружаются сразу же, описанное физически невозможно. Сразу вспоминается один из принципов построения X System, "Хуже обобщения одного примера может быть только обобщение вообще без примеров."
А вот листать малыми порциями, постоянно возвращаясь скроллом, очень неудобно.
А в главных, от тебя не требовалось разводить тему преимущества того или иного способа навигации, а просто помочь в реализации.
|
|
20.01.2011, 00:08
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
Сообщение от Logo
|
А в главных, от тебя не требовалось разводить тему преимущества того или иного способа навигации, а просто помочь в реализации.
|
тон смени, а?
а то, что ты не можешь это реализовать только подтверждает, что это не нужно
|
|
20.01.2011, 10:29
|
Аспирант
|
|
Регистрация: 15.03.2008
Сообщений: 91
|
|
То, что в JQuery нельзя сделать синхронную анимацию, лишь говорит о ее недостатках.
|
|
06.05.2012, 01:13
|
Новичок на форуме
|
|
Регистрация: 22.09.2011
Сообщений: 4
|
|
не серьёзно совсем
Уже год прошел, а ни кто не делится информацией
Мне сейчас похожий функционал требуется, нужно уменьшать блок 1 и добавлять внутренний отступ к соседнему блоку 2, при наведении.
$('адрес блока инициирования').hover(function()
{
$('блок 1').animate({'width': '-=10px'}, 300);
$('блок 2').animate({'paddingRight': '+=10px'}, 300);
},
function() {
*процедура при снятии курсора*
});
})
Выполняется практически поочередно, разница в старте функций (начала выполнения по времени) так велика, что искажается идея анимации. Гуглил - почти везде ситуация одинакова - ни какой конкретики, а "супер ответ" про суп и ложку, который отношения не имеет к теме вообще.
Когда тема создается, учитывайте пожалуйста, что по поисковым запросам, данная тема будет проявляться в результатах, и в итоге две страницы флуда.
Сообщение от Logo
|
То, что в JQuery нельзя сделать синхронную анимацию, лишь говорит о ее недостатках.
|
- это стопроцентная информация? т.е. выходом может быть только разбиение на две функции и отложенное время старта одной из них?
Или в этом случае jq подождет указанное время, запустит первую, а следом вторую?
Конструкцию как сейчас, я пробовал и местами менять (тогда очерёдность меняется) и думал время выполнения подогнать под один знаменатель - бесполезно.
|
|
06.05.2012, 01:47
|
Новичок на форуме
|
|
Регистрация: 22.09.2011
Сообщений: 4
|
|
ответ (решение)
Вариант с использованием SetTimeout - отпал как, предположительно не возможное решение. Пробовать не стал, но думаю поочередность сохранится.
Первый вариант был придумать конструкцию типа
$( "блок 1" ).add( "блок 2" )
и этим усложнить всё ситуацию.
НО - чудо свершилось, и имя ему
queue
- что значит "очередь"
Конструкция приняла такой вид:
$('адрес блока инициирования').hover(function()
{
$('блок 1').animate({'width': '-=10px'}, { duration: 300, queue: false });
$('блок 2').animate({'paddingRight': '+=10px'}, { duration: 300, queue: false });
},
function() {
*процедура при снятии курсора*
});
})
так вот "queue: false" - снимает этот вопрос!
jquery гораздо продуманней, чем может показаться.
ссылка на страницу в jq api - http://api.jquery.com/queue/
Буду рад, если вам пригодится данная информация)
|
|
06.05.2012, 15:51
|
что-то знаю
|
|
Регистрация: 24.05.2009
Сообщений: 5,176
|
|
используйте событие step в методе animate
$('блок 1').animate({
'width': '-=10px'
}, {
duration: 300,
step: function( now, data ) {
// тут и обрабатывайте все что нужно, каждый шаг
}
});
|
|
23.05.2012, 05:15
|
Новичок на форуме
|
|
Регистрация: 22.09.2011
Сообщений: 4
|
|
Всё равно в итоге лажа получается.
Мне нужно несколько групп блоков обрабатывать независимо, т.е. множество блоков, внутри которых используется анимация вложенных блоков при наведении, так вот если после наведения на блок 1 сразу наводить на блок 2, где используется анимация, то процедура назначенная блоку 1 при снятии не выполняется, а выполняется сразу процедура наведения на блок 2, а блок 1, так и остается как-будто фокус мыши на нем. Это пол беды. Если вернуть мышь на блок 1, то парметры 'width': '-=10px' выполняются принимая за начальное значение width уже -=10px, так как осталось после выполнения первого наведения. В итоге если навести 5 раз, то блок на 50px меньше становится, и не возвращается в начальное заданное css значение.
Есть мысли у кого нибудь?
|
|
|
|