ドカベンOPをhtml/css/jsで再現してみた
どうも、毎度おなじみ中野です。(まだ2回目の投稿)
今回は「ドカベンのオープニングの文字が浮き出るやつ」を作りました。
コード
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>ドカベン</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<b><div class="dokaben" id="kadoben">ドカベン</div></b>
<input type="text" id="dokabentext" value="ドカベン">
<input type="button" name="db" id="dokabutton" value="ドカベンする" onclick="dokabenscript()">
<script src="script.js"></script>
</body>
</html>
style.css
.dokaben{
font-size:1000%;
color:#ff0000;
}
#ani0{
transform: rotateX(88deg);
}
#ani1 {
transform: rotateX(80deg);
}
#ani2 {
transform: rotateX(65deg);
}
#ani3 {
transform: rotateX(50deg);
}
#ani4 {
transform: rotateX(40deg);
}
#ani5 {
transform: rotateX(30deg);
}
#ani6 {
transform: rotateX(22deg);
}
#ani7 {
transform: rotateX(14deg);
}
#ani8 {
transform: rotateX(7deg);
}
#ani9 {
transform: rotateX(0deg);
}
script.js
let play=0///今動いているか
let count=1///アニメのカウント
let dokaben = document.getElementById("kadoben");///動作をする要素
function dokabenscript(){
if(play>0){///もしプレイしていたら
return;///やらせない(固い意志)
}
play=1///動いていることにする
dokaben.innerHTML=document.getElementById("dokabentext").value;///入力された文字を反映
count = 0;///カウントをゼロに
dokaben.id=("ani0")///アニメをゼロに戻す
let intarval = setInterval(function(){
count++;///カウントしていく
dokaben.id=("ani"+count);///IDを書き換え
if(count >= 9){///アニメが終了したら
clearInterval(intarval); //intervalを終わる
play=0///動いていないことにする
}
},200)
}
基本は、setInterval(function(){~},200)
で1回づつIDを変更して動いてるかのように見せているだけです。
短時間で考えたスクリプトなので、仕組みは単純です。
みんなも改変して遊んでみよう!
今後やりたいこと
- 他の再現アプリを作る
- もう少し再現度を高くする etc...
Author And Source
この問題について(ドカベンOPをhtml/css/jsで再現してみた), 我々は、より多くの情報をここで見つけました https://qiita.com/nakano1120/items/6636f6f9579aff5479ab著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .