Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 02.10.2010, 01:09
Интересующийся
Отправить личное сообщение для Alexanderos Посмотреть профиль Найти все сообщения от Alexanderos
 
Регистрация: 27.09.2010
Сообщений: 29

Кто-нибудь.... есть идеи на этот счет? подскажите плиз, бьюсь над этим уже не один день... ((
Ответить с цитированием
  #12 (permalink)  
Старый 02.10.2010, 01:31
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

Сообщение от Alexanderos
Интересно, а как зациклить это движение? То есть при удержании мыши над стрелкой, скроллер прокручивал сожержимое до упора?
самое простое (скорей всего не лучшее): при mouseover создаем interval вызывающий self.prev() , при mouseout обнуляем interval.
Ответить с цитированием
  #13 (permalink)  
Старый 02.10.2010, 22:09
Интересующийся
Отправить личное сообщение для Alexanderos Посмотреть профиль Найти все сообщения от Alexanderos
 
Регистрация: 27.09.2010
Сообщений: 29

А если применять цикл, как сделать проверку на hover?
Ответить с цитированием
  #14 (permalink)  
Старый 05.10.2010, 00:04
Интересующийся
Отправить личное сообщение для Alexanderos Посмотреть профиль Найти все сообщения от Alexanderos
 
Регистрация: 27.09.2010
Сообщений: 29

Народ, ну подскажите пжл куда копать в поисках решения проблемы... (((
Ответить с цитированием
  #15 (permalink)  
Старый 05.10.2010, 07:23
Аватар для sysya
Профессор
Отправить личное сообщение для sysya Посмотреть профиль Найти все сообщения от sysya
 
Регистрация: 27.12.2009
Сообщений: 292

$(элемент на который наводится мышь).hover(function(){//первый параметр, при наведении мыши на элемент
var setInt = setInterval(функция анимации, время в мс);//запускаем интервал
}, function(){//второй параметр, при выходе мыши из пространства элемента
clearInterval(setInt);//удаляем интервал, функция анимации больше не вызывается по окончании установленного времени
});
как то так
надо доработать конечно, но в эту сторону капайте...
вот инфа ещё http://javascript.ru/setInterval
__________________
Нет предела совершенству...

Последний раз редактировалось sysya, 05.10.2010 в 07:32.
Ответить с цитированием
  #16 (permalink)  
Старый 05.10.2010, 20:12
Интересующийся
Отправить личное сообщение для Alexanderos Посмотреть профиль Найти все сообщения от Alexanderos
 
Регистрация: 27.09.2010
Сообщений: 29

Попробовал написать так:
$(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 вообще не силен, подскажите синтаксис, и вообще можно ли реализовать то что я говорю в цикле??

Спасибо всем кто помогает, реально давно парюсь

Последний раз редактировалось Alexanderos, 05.10.2010 в 20:14.
Ответить с цитированием
  #17 (permalink)  
Старый 06.10.2010, 16:41
Аватар для sysya
Профессор
Отправить личное сообщение для sysya Посмотреть профиль Найти все сообщения от sysya
 
Регистрация: 27.12.2009
Сообщений: 292

Я так понял вы совсем не знаете яваскрипт, а 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
__________________
Нет предела совершенству...

Последний раз редактировалось sysya, 06.10.2010 в 16:45.
Ответить с цитированием
  #18 (permalink)  
Старый 06.10.2010, 17:27
Интересующийся
Отправить личное сообщение для Alexanderos Посмотреть профиль Найти все сообщения от Alexanderos
 
Регистрация: 27.09.2010
Сообщений: 29

Сообщение от Alexanderos Посмотреть сообщение
Реакция на наведение нулевая... также пробовал вместо "mouseover" писать "hover" - тот же эффект.
Может "mouseover" тут не подойдет, вот только я пробовал и по вашему...

Еще раз попробовал с добавлением числа как вы указали (я так понимаю в роли "скорости"). Все также нет эффекта. Я согласен что на уровне интуиции в jquery... потому ищу помощи у грамотных людей.
Ответить с цитированием
  #19 (permalink)  
Старый 06.10.2010, 20:20
Аватар для sysya
Профессор
Отправить личное сообщение для sysya Посмотреть профиль Найти все сообщения от sysya
 
Регистрация: 27.12.2009
Сообщений: 292

в setInterval нет скорости, это время в милисекундах, по истечении которого запускается первый параметр этой функции. Поиском пользуйтесь, чтоб искать описание каких то незнакомых слов.

И ещё раз:
Цитата:
И изучайте javascript...

Посмотрите реалтзацию зацикливания анимации http://mnp.in.ua/jquery_dlya_nachinaushih2.php
читайте, изучайте яваскрипт(основы хотяб) и jquery получше или подождите до завтра, я свою галерею делаю, буду делать такую же штуку... но ничего не обещаю...
__________________
Нет предела совершенству...

Последний раз редактировалось sysya, 06.10.2010 в 20:29.
Ответить с цитированием
  #20 (permalink)  
Старый 08.10.2010, 10:21
Интересующийся
Отправить личное сообщение для Alexanderos Посмотреть профиль Найти все сообщения от Alexanderos
 
Регистрация: 27.09.2010
Сообщений: 29

Господа прошу помочь с синтаксисом, придумал следующую вещь.
Вместо того что щас есть (спасибо товарищу 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"...

Если конструкция совершенно не верная, подскажите пжл как сделать ее рабочей.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как изменить размер <iframe> в зависимости от размера его содержимого Xslibris Events/DOM/Window 19 18.09.2010 14:52
Помогите! Многоуровневые вкладки! sergeeeeee Элементы интерфейса 2 02.08.2010 23:50
Помогите пожалуйста разобраться Kupu4 Ваши сайты и скрипты 0 21.01.2010 10:44
Как можно изменить URL в адресной строке браузера? балерун Events/DOM/Window 12 17.11.2009 13:08
Помогите изменить скрипт VICTORY Серверные языки и технологии 4 06.09.2009 13:58