Несколько событий click() последовательно
Доброго времени суток Уважаемые Форумчане! Хочу просить у Вас помощи в реализации кода. Суть такова, есть html страничка с изображениями. Каждому изображению присвоен якорь, соответственно есть и ссылки на них. В каждой ссылке есть <span> c id. Нужно, чтобы событие click() срабатывало через 4секунды, после загрузки документа и все последующие события также обрабатывались через определенное время
<!DOCTYPE html> <html> <head> <title>Click</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" type="text/css" href="style/style.css" /> <script type="text/javascript" src="js/jquery-1.10.2.min.js"></script> <script type="text/javascript" src="js/click.js"></script> </head> <body> <div class="picture"> <a name="one"><img src="img/001.jpg" alt="1"></a> <a name="one1"><img src="img/002.jpg" alt="1"></a> <a name="one2"><img src="img/003.jpg" alt="1"></a> <a name="one3"><img src="img/004.jpg" alt="1"></a> <a name="one4"><img src="img/005.jpg" alt="1"></a> </div> <div> <ul> <li> <a href="#one">One</a> <a href="#one1">One1</a> <a href="#one2">One2</a> <a href="#one3"><span id="then">One3</span></a> <a href="#one4">One4</a> </li> </ul> </div> <script type="text/javascript"> //ожидаем загрузку всего документа $(document).ready(function(){ //кликаем $('#then').click(); }); </script> </body> </html> Пробовал разные варианты, setTimeOut, потом пробовал .delay(4000), где то допускаю ошибку. Испробованные варианты: //ожидаем загрузку всего документа $(document).ready(function(){ //кликаем $('#then').click().delay(4000); }); И еще //ожидаем загрузку всего документа $(document).ready(function(){ //кликаем setTimeOut($('#then').click, 4000; }); |
Klerikadm,
//ожидаем загрузку всего документа $(document).ready(function(){ //кликаем window.setTimeout(function () { $('#then')[0].click(); },4000) }); |
Спасибо большое! Заработало.
Подскажите пожалуйста, а как можно реализовать несколько ссылок через определенный интервал? Буду добавлять id="click_2", click_3... |
Klerikadm,
//ожидаем загрузку всего документа $(document).ready(function(){ //кликаем var n = 1; function go() { $('#click_' + n++)[0].click(); $('#click_' + n).length && window.setTimeout(function () { go(); },4000) } window.setTimeout(function () { go(); },4000) }); |
Poznakomlus, кроссбраузерно ли работает clearTimeout (вместо clearInterval) для интервалов?
|
Не знаю Даниил, не проверял. Вообще то подозрение, что псевдонимы они
jQuery(document).ready(function ($) { var links = $('a[href*=#one]').get().reverse(), len = links.length, clickTimer = setInterval(function () { links[--len].click(); len == 0 && clearInterval(clickTimer); }, 4000); }); и http://learn.javascript.ru/play/tOSokb |
Спасибо Вам огромное, за просто неоценимую помощь!
Может кто-то прочитает это сообщение из новеньких, таких же, как и я, которые хотят выучить jQuery. Но хочу сказать следующее - читайте книги, смотрите примеры, всего за раз не выучить, но можно доставать знания кусочками, не останавливаться, пробовать! Главное в начале научиться пользоваться справочником. И задавать правильные вопросы) Еще раз спасибо Всем участникам форума, которые мне помогли! |
Часовой пояс GMT +3, время: 14:32. |