コーディングテクニックの実装内容
jQueryで動きをつける際の定番アニメーションとして「リストが順番に表示される」というものがあります。皆様もこれまでにWEBページで1度は見かけたことがあるのではないでしょうか?
今回、実務で求められたのは「リストのオブジェクトを指定した順番から表示させてほしい」というものでした。あまり見かけない動きですが、よくあるパターンで使用しているjQueryの記述にJavaScriptの配列を組み合わせて対応しました。
実装所要時間:10分程度
難易度:初心者コーダーでも実装可能
HTML,JavaScript,CSSの記述内容
実装に必要な記述はこれだけです。
<ul class="list">
<li class="list-01">1</li>
<li class="list-08">8</li>
<li class="list-02">2</li>
<li class="list-04">4</li>
<li class="list-03">3</li>
<li class="list-05">5</li>
<li class="list-07">7</li>
<li class="list-06">6</li>
</ul>
$(function() {
var fade = ['.list-01','.list-02','.list-03','.list-04','.list-05','.list-06','.list-07','.list-08'];
$.each(fade, function(i, val) {
$(val).delay(180 * i).animate({opacity:'1'},400);
});
});
.list {
overflow: hidden;
width: 800px;
margin: 0 auto;
}
.list li {
float: left;
width: 200px;
height: 200px;
padding: 100px 0 0;
line-height: 0;
text-align: center;
color: #fff;
background: #000;
opacity: 0;
}
liタグへ任意の順番でクラスを付与しています。
とてもシンプルな仕上がりとなりました。
実装のポイント
- 1. 配列に.list-01~.list-08を格納する
- 2. liタグへ表示した順で.list-01~.list-08までクラスを付与する
- 3. $.eachで繰り返し処理を行う
まとめ
最近、実務でよく思うことがあります。
それは、基本的な動きはjQueryで対応できても「ひと手間加えた動きをつけたい」との要望がきた場合、「JavaScriptで改修する技術がないとハマってしまう」ということです。
jQueryプラグインは便利ですが、プラグインに登録されていない動きを求められた時の対策としてJavaScriptの基礎ををしっかり学ぶ必要があると感じます。
スポンサーリンク