Несколько событий 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, время: 15:14. |