Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.07.2016, 11:14
Интересующийся
Отправить личное сообщение для Vladislav306907 Посмотреть профиль Найти все сообщения от Vladislav306907
 
Регистрация: 18.01.2016
Сообщений: 28

Показать блоки по очереди
Добрый день, необходимо проделать следующее:
если 4 строки:
<p class="mig">Это тестовое сообщение, сейчас будет твориться чудо</p>
<p class="mig">Это тестовое сообщение, сейчас будет твориться чудо (2)</p>
<p class="mig">Это тестовое сообщение, сейчас будет твориться чудо (3)</p>
<p class="mig">Это тестовое сообщение, сейчас будет твориться чудо (4)</p>

Строки должны показываться по очереди с перерывом - сначала первая показалась и скрылась через секунду, потом через секунду вторая и так по кругу.

Попробовал сделать следующее:
$('.mig').each(function test(){
setTimeout(function(){$(this).fadeIn('slow')},1000);
setTimeout(function(){$(this).fadeOut('slow')},1000);
});
setInterval(test,2000);


Но не срабатывает =(
Ответить с цитированием
  #2 (permalink)  
Старый 26.07.2016, 11:24
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Vladislav306907,
алгоритм
слайдер не работает
есть ещё 100500 примеров на js и jquery
в вашем случае даже таймеры ненужны весь функционал обеспечат fadeIn и fadeOut
Ответить с цитированием
  #3 (permalink)  
Старый 26.07.2016, 12:27
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

мигалка на jquery
Vladislav306907,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .mig {
    display: none;
  }

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
   <script>
$(function() {
    var p = $(".mig"),
        len = p.length,
        indx = 0;
    ! function go() {
        p.eq(indx).fadeIn("slow", function() {
            $(this).delay(1000).fadeOut("slow", go)
        });
        indx = ++indx % len
    }()
});
  </script>
</head>

<body>
<p class="mig">Это тестовое сообщение, сейчас будет твориться чудо</p>
 <p class="mig">Это тестовое сообщение, сейчас будет твориться чудо (2)</p>
 <p class="mig">Это тестовое сообщение, сейчас будет твориться чудо (3)</p>
 <p class="mig">Это тестовое сообщение, сейчас будет твориться чудо (4)</p>



</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 26.07.2016, 14:57
Интересующийся
Отправить личное сообщение для Vladislav306907 Посмотреть профиль Найти все сообщения от Vladislav306907
 
Регистрация: 18.01.2016
Сообщений: 28

Спасибо большое, delay из головы вылетел совсем
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрипт, чтобы текстовым блокам давался красный бекграуд каждому по очереди barakuda jQuery 7 13.04.2016 18:15
Показать скрытые блоки через адресную строку ami_moor Общие вопросы Javascript 3 28.09.2015 16:15
Воспроизведение аудиофайлов в заданной очереди javascript Роберт Потоцкий Общие вопросы Javascript 3 30.03.2014 15:28
Показать скрыть блоки nurik2120 Элементы интерфейса 4 18.06.2013 10:59
JS показать остальные фотографии Ivanus Общие вопросы Javascript 1 14.07.2010 14:11