私は3つのポスター(画像)が並んでいるこのプロジェクトに取り組んでいます。タイムドフィルタのトランジションアニメーション
ループした各ポスターにタイムド・アニメーションを設定することが可能かどうかは疑問でした。
最初のポスターを除くすべてのものはグレースケールで2秒間、次に中間部を除くすべてが2秒間グレースケールされ、最初の2つは2秒間グレースケールされます。
多少意味があると思います。
おかげ
私は3つのポスター(画像)が並んでいるこのプロジェクトに取り組んでいます。タイムドフィルタのトランジションアニメーション
ループした各ポスターにタイムド・アニメーションを設定することが可能かどうかは疑問でした。
最初のポスターを除くすべてのものはグレースケールで2秒間、次に中間部を除くすべてが2秒間グレースケールされ、最初の2つは2秒間グレースケールされます。
多少意味があると思います。
おかげ
あなたはjavascriptが無期限に機能を繰り返させるsetInterval(function, time);
を使用することができます。または、setTimeout
を使用することもできます。これは1回だけ実行されますが、関数自体から再度呼び出すことができます。 (何らかの停止条件が必要な場合に便利です)
この機能では、すべての画像を循環させるだけです。私は配列を使ってこれを行いましたが、すべての画像を選択して<any jQuery element>.get()
を使用してそれらの要素にアクセスする$('img')
も使用できるようにする必要があります。
次に、removeClass
とaddClass
を使用して、希望する効果を説明するCSSクラスを追加して削除します。あなたはまた、アニメーションをしたい場合は、エンドのInt
あなたはあなたができる、ここでcodepen :)
var images = [$('#img1'), $('#img2'), $('#img3')];
var currImage = 0;
function cycle() {
images[currImage].removeClass('highlighted');
++currImage;
if(currImage >= images.length)
currImage = 0;
images[currImage].addClass('highlighted');
}
setInterval(cycle, 2000);
img.highlighted {
-webkit-filter: grayscale(100%);
filter: grayscale(100%);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="wrapper">
<img src="http://www.placecage.com/100/100" alt="" id="img1" class="highlighted">
<img src="http://www.placecage.com/100/100" alt="" id="img2">
<img src="http://www.placecage.com/100/100" alt="" id="img3">
</div>
(同じコードで終わる必要がありますjQueryを使用するか、または
の行に沿って何かを追加してください10img {
transition: all 1s ease;
-webkit-transition: all 1s ease;
}
CSSのトランジションについては、何か面白いものが必要な場合は、たくさんのページがあります。
それはどうしますか?それはどのように質問に答えますか?コードをばらまくだけではありません。あなた自身を説明してください! https://stackoverflow.com/help/how-to-answer – Rob
私はコードが複雑すぎるとは思わないが、私は自分の答えを改善すると思う。 – SourceOverflow
良い例だが、実際には彼は尋ねていた。 – Herohtar
'私は幾分意味があることを望みます。 [ask]を読んで、[mcve] – j08691
GoogleにCSSトランジションのチュートリアルを添付してください。 – sn3ll