JQuery модификация необходима в сценарии - PullRequest
0 голосов
/ 27 сентября 2011

Вот скрипт jQuery для скольжения букв, но как убрать последний класс «исчезновения», чтобы буквы оставались в своей конечной позиции?Вот демо:

http://blog.waiyanlin.net/example/jquery/flyingtext.html

и вот скрипт для него:

$(document).ready(function(){

  $('.container .flying-text').css({opacity:0});
  $('.container .active-text').animate({opacity:1, marginLeft: "350px"}, 1000);

  var int = setInterval(changeText, 1000);  


  function changeText(){

    var $activeText = $(".container .active-text"); 

    var $nextText = $activeText.next(); 
    if($activeText.next().length == 0) $nextText = $('.container .flying-text:first');

    $activeText.animate({opacity:0}, 1000);
    $activeText.animate({marginLeft: "-100px"});

    $nextText.css({opacity: 0}).addClass('active-text').animate({opacity:1, marginLeft: "350px"}, 500, function() {
      $activeText.removeClass('active-text');                                         
    });
  }
}); 

Ответы [ 2 ]

1 голос
/ 27 сентября 2011

Это очень просто, требуется 2 модификации. Удалить анимацию и очистить тайм-аут. Ты должен был сам это понять.

$(document).ready(function(){

  $('.container .flying-text').css({opacity:0});
  $('.container .active-text').animate({opacity:1, marginLeft: "350px"}, 1000);

  var intval = setInterval(changeText, 1000);    

  function changeText() {
    var $activeText = $(".container .active-text"); 
    var $nextText = $activeText.next();

    if ($activeText.next().length == 0) clearInterval(intval);

    $nextText.css({opacity: 0}).addClass('active-text').animate({opacity:1, marginLeft: "350px"}, 500, function(){
      $activeText.removeClass('active-text');                                           
    });
  }
}); 

Согласно комментариям, вот ссылка на рабочий пример jsfiddle: http://jsfiddle.net/Q8ZGA/

0 голосов
/ 27 сентября 2011

Если я правильно понимаю, вам нужно оставить текст после анимации.В этом случае удалите эту строку:

$activeText.animate({opacity:0}, 1000);
$activeText.animate({marginLeft: "-100px"});

Поскольку вы ее затухаете.

Код (без интервала): http://jsfiddle.net/uedt6/4/

...