↓↓↓ クリックしてみてね ↓↓↓
ページに表示される正方形の要素が左から右にアニメーションで移動し、ボタンをクリックすることでアニメーションを開始または停止できるウェブページが作成されます。
HTML (index.html):
- HTMLの基本的な構造です。外部スタイルシート(style.css)と外部JavaScriptファイル(script.js)を読み込んでいます。
- ページには
.box
というクラス名を持つ<div>
要素があり、この要素にアニメーションを適用します。 - ページには “アニメーション開始” と “アニメーション停止” の2つのボタンもあり、これらのボタンをクリックすることでアニメーションの制御が行われます。
CSS (style.css):
.box
クラスに対するスタイルを定義しています。このスタイルは.box
クラスを持つ要素に適用されます。.box
は正方形の要素で、背景色が青色です。@keyframes
ルールを使用して、slide
というアニメーションを定義しています。このアニメーションは、要素を左から右に移動させるもので、animation-name
、animation-duration
、animation-iteration-count
、animation-direction
などのプロパティで設定が行われています。
JavaScript (script.js):
- JavaScriptはアニメーションを制御するためのロジックを提供しています。
document.querySelector('.box')
を使用して、HTML内の.box
クラスを持つ要素を取得しています。startAnimation()
関数は “アニメーション開始” ボタンがクリックされたときに呼び出され、animationPlayState
プロパティを'running'
に設定してアニメーションを開始します。stopAnimation()
関数は “アニメーション停止” ボタンがクリックされたときに呼び出され、animationPlayState
プロパティを'paused'
に設定してアニメーションを停止します。
<!DOCTYPE html> <html> <head> <link rel="stylesheet" href="style.css"> </head> <body> <br> <center><div class="box"></div></center> <br> <center> <button onclick="startAnimation()">アニメーション開始</button> <button onclick="stopAnimation()">アニメーション停止</button> </center> <script src="script.js"></script> </body> </html>
.box { width: 100px; height: 100px; background-color: #3498db; position: relative; animation-name: slide; animation-duration: 2s; animation-iteration-count: infinite; animation-direction: alternate; } @keyframes slide { 0% { left: -100px; } 100% { left: 100px; } }
const box = document.querySelector('.box'); let animationIsRunning = false; function startAnimation() { if (!animationIsRunning) { box.style.animationPlayState = 'running'; animationIsRunning = true; } } function stopAnimation() { if (animationIsRunning) { box.style.animationPlayState = 'paused'; animationIsRunning = false; } }