Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.08.2016, 13:56
Новичок на форуме
Отправить личное сообщение для folkemon Посмотреть профиль Найти все сообщения от folkemon
 
Регистрация: 02.08.2016
Сообщений: 7

Повтор выполнения скрипта
Доброго времени суток,
Помогите решить проблему, есть код скрипта, но выполняется он одноразово, а как можно его сделать что бы выполнялся бесконечно
$(document).ready(function(){
 $.fn.animate_Text = function() {
  var string = this.text();
  return this.each(function(){
   var $this = $(this);
   string=string.replace(/./g, '<span class="new">$&</span>');
$this.html(string.replace(/~/g, '<br />'));
   $this.find('span.new').each(function(i, el){
    setTimeout(function(){ $(el).addClass('div_opacity'); }, 10 * i);
   });
  });
 };
 $('#example').show();
 $('#example').animate_Text();
});
Ответить с цитированием
  #2 (permalink)  
Старый 02.08.2016, 15:34
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

folkemon,
на форуме сто пятьсот печатающих машинок ...
Замента текста с таймингом

Эффект печатной машинки

Необходимо исправить функцию печатной машинки
Ответить с цитированием
  #3 (permalink)  
Старый 03.08.2016, 07:36
Новичок на форуме
Отправить личное сообщение для folkemon Посмотреть профиль Найти все сообщения от folkemon
 
Регистрация: 02.08.2016
Сообщений: 7

Спасибо Рони за совет, действительно сделано проще,
а не подскажите, почему не работает в таком виде код?
<head>
  <style>
    body {
      height: 1200px;
    }
  </style>
</head>
<body>
<div id="data"></div>
<script>
	$(window).scroll(function(){
	if ($(this).scrollTop() > 400) {
	firstScript ();}
	}
	$(window).scroll(function(){
	if ($(this).scrollTop() < 800) {
	firstScript ();}
	}
	var firstScript = function () {
	var str = 'Основной сложностью в работе с закупками является является поиск тендеров, которые проводятся заказчиками и касаются товаров, работ у услуг поставляемых исполнителем. Поиск торгов – ответственный и сложный этап организации участия в тендере и от того, насколько качественно и профессионально он организован, во многом зависит его благоприятный исход.',
    len = str.length,
    i = 0;
    setInterval(function () {
      data.innerHTML += str[i++];
      if (i == len) data.innerHTML = '', i = 0;
    }, 50);
}());
</script>

</body>

Последний раз редактировалось folkemon, 03.08.2016 в 07:39.
Ответить с цитированием
  #4 (permalink)  
Старый 03.08.2016, 08:09
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

folkemon,
потому что даже если исправить ошибки, алгоритм скрипта предназначен для испытания браузера на выносливость, сотни таймеров одновременно!!!
Ответить с цитированием
  #5 (permalink)  
Старый 03.08.2016, 09:53
Новичок на форуме
Отправить личное сообщение для folkemon Посмотреть профиль Найти все сообщения от folkemon
 
Регистрация: 02.08.2016
Сообщений: 7

рони,
Пожалуйста помогите, я так понимаю что множество таймеров появляется из за условий того что скроллинг выполняется при условии >400px и < 800px, а если поставить условие =400px и =800px ?
Ответить с цитированием
  #6 (permalink)  
Старый 03.08.2016, 10:32
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

включение/выключение печатной машинки при скролинге
folkemon,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
    body {
      height: 2500px;
    }
    #data{
      position: fixed;
    }
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
     var timer, pause = true, str = 'Основной сложностью в работе с закупками является является поиск тендеров, которые проводятся заказчиками и касаются товаров, работ у услуг поставляемых исполнителем. Поиск торгов – ответственный и сложный этап организации участия в тендере и от того, насколько качественно и профессионально он организован, во многом зависит его благоприятный исход.',
    len = str.length,
    i = 0;
  $(window).scroll(function(){
  var scroll = $(this).scrollTop();

  if (scroll > 400 && scroll < 800) {
  if(pause) {
  pause = false;
  timer = window.setTimeout(firstScript, 300)}
  }
  else {
  pause = true;
  data.textContent = '', i = 0;
  window.clearTimeout(timer)
  }
  })
  function firstScript() {
      data.textContent += str[i++];
      if (i == len) data.textContent = '', i = 0;
      timer = window.setTimeout(firstScript, 50);
    }

});
  </script>
</head>

<body>
<div id="data"></div>

</body>
</html>

Последний раз редактировалось рони, 03.08.2016 в 10:35.
Ответить с цитированием
  #7 (permalink)  
Старый 03.08.2016, 11:22
Новичок на форуме
Отправить личное сообщение для folkemon Посмотреть профиль Найти все сообщения от folkemon
 
Регистрация: 02.08.2016
Сообщений: 7

рони,
Спасибо большое
Только есть одно, но как можно сделать что бы не циклически печатался а только по запуску скролла?
Ответить с цитированием
  #8 (permalink)  
Старый 03.08.2016, 11:28
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

folkemon,
function firstScript() {
      data.textContent += str[i++];
      if (i < len) timer = window.setTimeout(firstScript, 50);
    }
Ответить с цитированием
  #9 (permalink)  
Старый 03.08.2016, 14:26
Новичок на форуме
Отправить личное сообщение для folkemon Посмотреть профиль Найти все сообщения от folkemon
 
Регистрация: 02.08.2016
Сообщений: 7

рони,
Спасибо, то что надо
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Форма обратной связи. Ошибка выполнения скрипта Fandor Элементы интерфейса 1 01.12.2013 15:39
Получить результат выполнения скрипта на сервере в переменную ява gyper AJAX и COMET 5 19.11.2012 11:36
Создание скрипта для выполнения зацикленной последовательности задач Искатель Общие вопросы Javascript 5 13.09.2012 19:24
Google Chrome перерисовка страницы во время выполнения скрипта Dekart Javascript под браузер 0 08.06.2010 08:35
Нужно добавить блокировку ссылки на время выполнения скрипта aidka Events/DOM/Window 1 02.08.2009 20:11