
No.1ベストアンサー
- 回答日時:
htmlとcssだけではできなかったので、
javascriptでページの移動を遅らせて、
その間にgifを表示するということを
してみました。
sample.gifというgifアニメと、
anotherpage.htmlというリンク先ファイルを、
以下のhtmlファイルと同じフォルダに入れてから
実行してみてください。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>gif-anime</title>
<style>
.gif{
margin:10% auto;
width:300px;
height:300px;
}
.btn {
background-color: #45d;
color: #fff;
}
.btn>.b {
display: none;
}
.btn:enabled:hover {
background-color: #d45;
}
.btn:enabled:hover>.a {
display: none;
}
.btn:enabled:hover>.b {
display: inline;
}
.btn:disabled {
background-color: #333;
color:#aaa;
}
</style>
</head>
<body>
<button id="btn" class="btn" disabled>ボタン<span class="a">A</span><span class="b">B</span></button>
<img src="sample.gif" id="gif" class="gif" style="display:none;"/>
<script>
const delayTime = 3000, // 待ち時間(ミリ秒)
linkURL = 'anotherpage.html'; // リンク先URL
const btn = document.getElementById('btn'),
gif = document.getElementById('gif');
gif.addEventListener('load', () => { // 画像が読み込まれたら
btn.disabled = false; // ボタンを押せるようにする
btn.addEventListener('click', () => { // クリックされたら
gif.style.display = 'block'; // gifを表示する
window.setTimeout(()=>{ // 待ち時間分遅らせる
location.href = linkURL; // リンク先へ飛ぶ
},delayTime);
}, false);
}, false);
</script>
</body>
</html>
この回答へのお礼
お礼日時:2021/09/08 09:10
こんなに詳しく、ありがとうございます!
やはりjavascriptが出来ないと、表現できることに限りがありますね…。
早速、実装してみようと思います。
本当にありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
body内にmetaタグを記述は問題...
-
HTMLのテキストが、iPhoneでと...
-
css ,videotタグ。ホームページ...
-
Google向けメタタグについて。...
-
KentWebのCGIメールフォームの...
-
ホームページがトルコ語表示に...
-
【HTML】<title>内のコメントタ...
-
表示時に1回だけリロードさせ...
-
文字コードについて
-
HTMLからフォルダを開きたい
-
社内で利用するWebサイトを立ち...
-
iPadの標準ブラウザでローカルH...
-
Excelで、社外秘(閲覧のみ)と...
-
Webサイトから、txtファイルを...
-
、URL化させるにはどうしたらい...
-
ソースの追加行数と変更行数
-
どのページもすべて同じURLなの...
-
複数のindex.htmlについて
-
Dreamweaverでページ全体が文字...
-
【HTML】1クリックで複数ファイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
根号の書き方について
-
body内にmetaタグを記述は問題...
-
css ,videotタグ。ホームページ...
-
自分で<head>内をかけない場合...
-
borderでa:hover下線表示させる...
-
表示時に1回だけリロードさせ...
-
文字化けを故意に表示したい
-
HTMLファイルのインクルードで...
-
HTMLソースにない文字がブラウ...
-
POSTしたデータの文字コードがu...
-
HTML上に貼り付けたPDFが表示さ...
-
FFFTPでの文字化け
-
KentWebのCGIメールフォームの...
-
【HTML】<title>内のコメントタ...
-
ページ全体を中央に配置したい...
-
Firefox, リンクをクリックで b...
-
HTML5での http-equiv="refresh...
-
インラインフレームより下が消...
-
Duolingo のソースコードの名前...
-
COLDFUSIONの文字化け
おすすめ情報