http://api.jquery.com/fadeOut/ <- フェードアウト API
Javascript を学ぼうとしていて、Codepen で見つけたスニペットで遊んでいます。
ランダムなテキスト配列スニペットが別のテキスト オブジェクトに遷移するときに、テキストがフェードアウトするようにしようとすると問題が発生します。現在、配列は循環し、Math.Random 関数 (5*1) を使用して配列から文字列をランダムに選択し、新しいテキスト オブジェクトが読み込まれるたびにフェードインしますが、フェードアウトしたいのですが、そうではありません。 .fadeOut プロパティを適切に利用しているとは思いません。テキストがフェードアウトするようにするにはどうすればよいですか?
var textTimer;
var inTransition = false;
startTimer();
function startTimer() {
clearTimeout(textTimer);
textTimer = setTimeout(changeTitle, 3500);
}
changeTitle();
var titleNumber = Math.floor(Math.random() * 5) + 1;
function changeTitle() {
var titleArray = [
"Test1",
"Test2",
"Test3",
"Test4",
"Test5"
];
var tempTitleLength = titleArray.length - 1;
if (inTransition == false) {
inTransition = true;
titleNumber++;
if (titleNumber > tempTitleLength){
titleNumber = 0
}
$('.text').html('');
$('.text').css({opacity: '0'});
$('.text').html(titleArray[titleNumber]);
$('.text').fadeOut();
$('.text').stop().delay(0).animate({
opacity: 1
}, 1500, function() {
inTransition = false;
startTimer.()
});
}
}
ありがとう!:D
HTMLはかなり単純です
<div class="text"></div>