2017-02-24 6 views
0

新しいテキストが変更された後にテキストをフェードアウトさせようとしています。私はテキストが表示される場所に自分のコードで何が間違っているのだろうかと疑問に思っていましたが、その後フェードアウトしてから、一種の醜い方法で戻ってきました...このコードをどうやって改訂できますか?ありがとうございました。私はこのテキストを古いテキストにフェードアウトさせ、新しいテキストをフェードインさせようとしています

あなたはこれであなたの変更()関数を置き換え、私はhttp://revolthub.com

<script type="text/javascript"> 
var text = ['Sometimes you just have to destroy everything in order to build something brand new<span class="period">.</span>', 'So, we decided to destroy the old way of doing things, and completely redesign Revolt<span class="period">.</span>']; 
var counter = 0; 
var elem = document.getElementById("changeText"); 
setInterval(change, 8000); 
$(elem).fadeIn(); 
function change(){ 
$(elem).fadeOut(); 
elem.innerHTML= text[counter]; 
    counter++; 
    if(counter >= text.length) { counter = 0; } 
    $(elem).fadeIn(); 
} 
</script> 

答えて

0

で働いているウェブサイトを閲覧することができます

function change(){ 
    $(elem).fadeOut(400, function() { 
     elem.innerHTML = text[counter]; 
     counter++; 
     if(counter >= text.length) { counter = 0; } 
     $(elem).fadeIn(); 
    }); 
} 

説明:フェードアウト関数はすぐに戻ります、というとフェードが完了するのを待つよりも。フェードが実際に行われるまで、変更を待つために、コールバックをfadeOutに渡したいと思うでしょう。

+0

すぐにお返事ありがとうございます。あなたが説明したように関数を変更しましたが、私はちょっと初心者ですが、このコールバックをfadeOutに渡す方法が完全にはわかりません。ページを更新して新しい変更を確認することができます。 –

+0

申し訳ありませんが、誤った構文がありました。私が今持っているものを試してください。 –

+0

ありがとう!あなたはそれを修正しました!私はあなたに+1の投票権を与えますが、私の評判は今は低すぎます。 –

関連する問題