木曜日, 9月 05, 2024

Let's start JavaScript 34 
クリックで配置画像が点滅・停止

クリックした配置画像を点滅・停止させてみました。
テキストの場合との差は以下で確認してみてください。


-----------------------------
ルート階層の中に・・・
    picフォルダー(image.png)

という構造です。

<!-- index.html -->
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content=
        "width=device-width, initial-scale=1.0">
<title>画像の点滅</title>
<style>
/* 初期状態の画像スタイル */
body, html {
height: 100%;
margin: 0;
display: flex;
justify-content: center;
align-items: center;
background-color: dodgerblue;
}
#blinkingImage {
width: 300px;
cursor: pointer;
}
</style>
</head>
<body>
<img id="blinkingImage" src="pic/image.png"
alt="クリックして点滅する画像" />

<script>
// 点滅を開始・停止するための変数
let isBlinking = false;
let blinkInterval;

// 点滅を制御する関数
function toggleBlinking() {
const image =
document.getElementById('blinkingImage');

if (!isBlinking) {
// 点滅を開始
isBlinking = true;
blinkInterval = setInterval(() => {
image.style.visibility =
                    (image.style.visibility === 'hidden') ? 'visible' : 'hidden';
}, 500); // 500msごとに点滅
} else {
// 点滅を停止
clearInterval(blinkInterval);
image.style.visibility = 'visible'; // 画像を表示状態に戻す
isBlinking = false;
}
}

// クリック時に点滅を開始・停止するイベントリスナー
document.getElementById('blinkingImage').
addEventListener('click', toggleBlinking);
</script>
</body>
</html>
<!-- index.html -->
 -----------------------------

実際にクリック〜点滅・停止の流れ