Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.08.2012, 03:10
Интересующийся
Отправить личное сообщение для pahannew Посмотреть профиль Найти все сообщения от pahannew
 
Регистрация: 31.03.2012
Сообщений: 12

Эмуляция клика.
Доброй всем ночи. Подскажите как можно эмулировать событие click.
Суть в том что есть ротатор на сайте который переключается только по клику, а нужно что бы еще и по времени мог.

вот все что в скрипте находится

<script>
// DOM Ready
$(function() {

var current;

function rotate() {

// This seems like a sucky way to do it, but you can't select by classes because they execute in order

if (current == 1) {
$("#block-1").removeClass().addClass("active");
$("#block-2").removeClass().addClass("non-active-top");
$("#block-3").removeClass().addClass("non-active-bottom");
} else if (current == 2) {
$("#block-1").removeClass().addClass("non-active-bottom");
$("#block-2").removeClass().addClass("active");
$("#block-3").removeClass().addClass("non-active-top");
} else {
$("#block-1").removeClass().addClass("non-active-top");
$("#block-2").removeClass().addClass("non-active-bottom");
$("#block-3").removeClass().addClass("active");
}

}


$("#rotator div").click(function()
{

// Enables reversing, idea via Andrea Canton: https://twitter.com/andreacanton/sta...54634279849985
current = this.id.substr(6);
rotate();

});

});

</script>

нужно что бы "$("#rotator div").click(function() " выполнялась каждые 5 секунд.
Ответить с цитированием
  #2 (permalink)  
Старый 14.08.2012, 09:54
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

<script>
 // DOM Ready
 $(function() {

 var current;

 function rotate() {

 // This seems like a sucky way to do it, but you can't select by classes because they execute in order

 if (current == 1) {
 $("#block-1").removeClass().addClass("active");
 $("#block-2").removeClass().addClass("non-active-top");
 $("#block-3").removeClass().addClass("non-active-bottom");
 } else if (current == 2) {
 $("#block-1").removeClass().addClass("non-active-bottom");
 $("#block-2").removeClass().addClass("active");
 $("#block-3").removeClass().addClass("non-active-top");
 } else {
 $("#block-1").removeClass().addClass("non-active-top");
 $("#block-2").removeClass().addClass("non-active-bottom");
 $("#block-3").removeClass().addClass("active");
 }

 }

var switchNoHandClick = true, auto = false;


$("#rotator div").click(function() 
 {
  if(!auto){switchNoHandClick = false;setTimeout('switchNoHandClick = true',1*60*1000)}
 // Enables reversing, idea via Andrea Canton: https://twitter.com/andreacanton/sta...54634279849985
 current = this.id.substr(6); 
 rotate();

 });
function AutoRotate()  {
    if(switchNoHandClick){
          auto = true;
          $("#rotator div").click();
          auto = false;
    }
}
setInterval (function(){AutoRotate()},5000)

</script>

Последний раз редактировалось Deff, 14.08.2012 в 10:03.
Ответить с цитированием
  #3 (permalink)  
Старый 15.08.2012, 02:55
Интересующийся
Отправить личное сообщение для pahannew Посмотреть профиль Найти все сообщения от pahannew
 
Регистрация: 31.03.2012
Сообщений: 12

Не работает.((( Можеть что неправильно делаю. я просто вставил этот код вместо того который я писал выше.
Ответить с цитированием
  #4 (permalink)  
Старый 15.08.2012, 03:01
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

pahannew,
Ссылка - есть ?
Ответить с цитированием
  #5 (permalink)  
Старый 16.08.2012, 16:06
Интересующийся
Отправить личное сообщение для pahannew Посмотреть профиль Найти все сообщения от pahannew
 
Регистрация: 31.03.2012
Сообщений: 12

почему то не работает не вращение по клику не по времени
Ответить с цитированием
  #6 (permalink)  
Старый 16.08.2012, 16:07
Интересующийся
Отправить личное сообщение для pahannew Посмотреть профиль Найти все сообщения от pahannew
 
Регистрация: 31.03.2012
Сообщений: 12

ссылка на ротатор?
bezen.ru на главно
Ответить с цитированием
  #7 (permalink)  
Старый 16.08.2012, 18:27
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

pahannew,
Смотрю - подзавис... пытаюсь к вечеру доделать
Ответить с цитированием
  #8 (permalink)  
Старый 16.08.2012, 19:52
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

pahannew,
Поправил Скрипт:
<script type="text/javascript" src="mod_win/fancy/lib/jquery-1.7.2.min.js"></script>
	
	<!-- 
		Thought of using jQuery UI's .addClass transitions as fallback (or primary) but doesn't work as well
		<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.0/jquery-ui.min.js"></script> 
	-->
	
<script>
		// DOM Ready
		$(function() {
		
			var current=1;
					
			function rotate() {
			
				// This seems like a sucky way to do it, but you can't select by classes because they execute in order
							
				if (current == 1) {
					$("#block-1").removeClass().addClass("active");
					$("#block-2").removeClass().addClass("non-active-top");
					$("#block-3").removeClass().addClass("non-active-bottom");
				} else if (current == 2) {
					$("#block-1").removeClass().addClass("non-active-bottom");
					$("#block-2").removeClass().addClass("active");
					$("#block-3").removeClass().addClass("non-active-top");
				} else {
					$("#block-1").removeClass().addClass("non-active-top");
					$("#block-2").removeClass().addClass("non-active-bottom");
					$("#block-3").removeClass().addClass("active");
				}
			
			}
			
 
 			var timeoutId;
			$("#rotator div").click(function() 
			{
			clearTimeout(timeoutId);
			switchNoHandClick = false;
			timeoutId=setTimeout(function(){
				switchNoHandClick = true;
			},23*1000);
			     // Enables reversing, idea via Andrea Canton: https://twitter.com/andreacanton/status/24954634279849985
				current = this.id.substr(6);			
				rotate();
			
			});
		

var switchNoHandClick = true, auto = false;
var LengBLK = $("#rotator > div[id^='block-']").length;

function AutoRotate()  {
    if(switchNoHandClick){
          //alert(">"+current)
          auto = true;	  
	      current++; 
	      if(current > LengBLK)current=1;
	  rotate();
          auto = false;	

    }
}

setInterval (function(){AutoRotate()},5000)


		});

	</script>


Да - Удали такую жа библиотеку ( mod_win/fancy/lib/jquery-1.7.2.min.js)
- она ниже, после коммента <!-- Add jQuery library --> ) - иначе слайдшоу - не будет работать (Я её поставил в самый верх скрипта , вместо старой -1.4.4.

Последний раз редактировалось Deff, 17.08.2012 в 16:28.
Ответить с цитированием
  #9 (permalink)  
Старый 17.08.2012, 15:40
Интересующийся
Отправить личное сообщение для pahannew Посмотреть профиль Найти все сообщения от pahannew
 
Регистрация: 31.03.2012
Сообщений: 12

Блин спасибо большое, очень очень выручил, единственное хотел спросить, а как его в другую сторону что бы крутился сделать?

И еще маленький вопросик) Как тебе наш сайт? По виду и работоспособности)) Интересно просто мнение))
Ответить с цитированием
  #10 (permalink)  
Старый 17.08.2012, 16:12
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

pahannew,
Еще раз
Вот этот скрипт:
Ниже установленного скрипта - Уберите со странице - иначе слайдоу галлерея - справо (мелкие квадратики картинок) - не работает
<!-- Add jQuery library -->
	<script type="text/javascript" src="mod_win/fancy/lib/jquery-1.7.2.min.js"></script>


Я этот скрипт поставил в перед Вашим скриптом - сейчас два идентичных
Нижний нужно убрать!
===============================================
Поправил верчение на "Обратку"

Последний раз редактировалось Deff, 17.08.2012 в 16:29.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jQuery UI Datepicker включается только со второго клика по инпуту, нужно с первого adelante jQuery 3 07.07.2012 14:53
Как включить при валидации jquery.validation отправку координат клика по input=image Error-free jQuery 7 26.06.2012 20:14
Функция в функции. Обработчики клика. Запутался =) DorianLeroy Общие вопросы Javascript 8 29.09.2011 16:17
Проблема с событием клика Garik Events/DOM/Window 2 28.06.2011 16:28
Получение координат клика мыши uonax Events/DOM/Window 3 20.06.2010 09:32