Кто-нибудь.... есть идеи на этот счет? подскажите плиз, бьюсь над этим уже не один день... ((
|
Цитата:
|
А если применять цикл, как сделать проверку на hover?
|
Народ, ну подскажите пжл куда копать в поисках решения проблемы... (((
|
$(элемент на который наводится мышь).hover(function(){//первый параметр, при наведении мыши на элемент var setInt = setInterval(функция анимации, время в мс);//запускаем интервал }, function(){//второй параметр, при выходе мыши из пространства элемента clearInterval(setInt);//удаляем интервал, функция анимации больше не вызывается по окончании установленного времени });как то так надо доработать конечно, но в эту сторону капайте... вот инфа ещё http://javascript.ru/setInterval |
Попробовал написать так:
$(opts.prev, root).mouseover( function(){ var setInt = setInterval( function() { self.prev() } ); }, function(){ clearInterval(setInt); } ); Реакция на наведение нулевая... также пробовал вместо "mouseover" писать "hover" - тот же эффект. Может проще саму функцию движения изменить которая срабатывает при наведении??? next: function(time) { this.move(1, time); }, prev: function(time) { this.move(-1, time); }, Либо оставить все как есть, только сделать в цикле с проверкой на состояние наведения мыши на объект управления... то есть если мышь наведена выполняем функцию движения как она есть (продвигаем скролл на 1 раз), далее опять проверка... и при отсутствии наведения цикл завершается... Только я в javascript вообще не силен, подскажите синтаксис, и вообще можно ли реализовать то что я говорю в цикле?? Спасибо всем кто помогает, реально давно парюсь :( |
Я так понял вы совсем не знаете яваскрипт, а jquery только интуитивно:)
Так не правильно использовать mouseover. Такой синтаксис подходит для hover: $(opts.prev, root).hover( function(){ var setInt = setInterval( function() { self.prev() }, 300 ); }, function(){ clearInterval(setInt); } );Так примерно. И изучайте javascript... Посмотрите реалтзацию зацикливания анимации http://mnp.in.ua/jquery_dlya_nachinaushih2.php |
Цитата:
Еще раз попробовал с добавлением числа как вы указали (я так понимаю в роли "скорости"). Все также нет эффекта. Я согласен что на уровне интуиции в jquery... потому ищу помощи у грамотных людей. |
в setInterval нет скорости, это время в милисекундах, по истечении которого запускается первый параметр этой функции. Поиском пользуйтесь, чтоб искать описание каких то незнакомых слов.
И ещё раз: Цитата:
|
Господа прошу помочь с синтаксисом, придумал следующую вещь.
Вместо того что щас есть (спасибо товарищу mycoding): // prev $(opts.prev, root).mouseover( function() { self.prev() } ); Пробую сделать в цикле: // prev $(opts.prev, root).mouseover( while(курсор мыши над объектом "opts.prev, root") { function() { self.prev() } } ); Next по аналогии... Не могу правильно написать проверку состояния наведения мыши... Возможно покажется нагромождением - фактически 2 раза проверяется состояние наведения курсора... Просто хочется чтобы цикл запускался только в случае наведения "$(opts.prev, root).mouseover"... Если конструкция совершенно не верная, подскажите пжл как сделать ее рабочей. |
Часовой пояс GMT +3, время: 16:50. |