JavaScriptで手動アニメーションと自動アニメーションを区別する方法は?
手動アニメーションでは、アニメーションプロセスは自動化されていません。以下は、DOMオブジェクトのプロパティとJavaScript関数を使用した単純なアニメーションの実装です。次のリストには、さまざまなDOMメソッドが含まれています。
- JavaScript関数getElementById()を使用しています DOMオブジェクトを取得し、それをグローバル変数imgObjに割り当てます。
- 初期化関数を定義しましたinit() 初期化するにはimgObj ここで、位置と左の属性を設定しました。
- ウィンドウの読み込み時に初期化関数を呼び出しています。
- 最後に、 moveRight()を呼び出します。 左の距離を10ピクセル増やす機能。負の値に設定して左側に移動することもできます。
次のコードを実行して、JavaScriptでアニメーションを実装してみてください。
<html>
<head>
<title>JavaScript Animation</title>
<script>
<!--
var imgObj = null;
function init() {
imgObj = document.getElementById('myImage');
imgObj.style.position= 'relative';
imgObj.style.left = '0px';
}
function moveRight() {
imgObj.style.left = parseInt(imgObj.style.left) + 10 + 'px';
}
window.onload =init;
//-->
</script>
</head>
<body>
<form>
<img id="myImage" src="/images/html.gif" />
<p>Click button below to move the image to right</p>
<input type = "button" value = "Click Me" onclick = "moveRight();" />
</form>
</body>
</html> JavaScript関数setTimeout()を使用して、このプロセスを自動化できます 次のように-
ここでは、さらにメソッドを追加しました。では、ここで何が新しくなったのか見てみましょう-
- moveRight() 関数がsetTimeout()を呼び出しています imgObj。の位置を設定する関数
- 新しい関数stop()を追加しました setTimeout()によって設定されたタイマーをクリアするには 関数を使用して、オブジェクトを初期位置に設定します。
次のコードを実行して、JavaScriptで自動アニメーションを実装してみてください-
<html>
<head>
<title>JavaScript Animation</title>
<script>
<!--
var imgObj = null;
var animate ;
function init() {
imgObj = document.getElementById('myImage');
imgObj.style.position= 'relative';
imgObj.style.left = '0px';
}
function moveRight() {
imgObj.style.left = parseInt(imgObj.style.left) + 10 + 'px';
animate = setTimeout(moveRight,20); // call moveRight in 20msec
}
function stop(){
clearTimeout(animate);
imgObj.style.left = '0px';
}
window.onload =init;
//-->
</script>
</head>
<body>
<form>
<img id="myImage" src="/images/html.gif" />
<p>Click the buttons below to handle animation</p>
<input type = "button" value = "Start" onclick = "moveRight();" />
<input type = "button" value = "Stop" onclick = "stop();" />
</form>
</body>
</html> -
JavaScriptの関数とメソッドの違いは何ですか?
JavaScriptでも関数とメソッドは同じですが、メソッドはオブジェクトのプロパティである関数です。 以下はJavaScriptの関数の例です- function functionname(param1, param2){ // code } 例 メソッドはオブジェクトに関連付けられた関数です。以下はJavaScriptのメソッドの例です- <html> <head> <script> var e
-
JavaScriptで要素の非表示と表示を切り替える方法は?
JavaScriptで要素の非表示と表示を切り替えるには、コードは次のとおりです- 例 <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1" /> <style> body { font-family: "Segoe UI", Tahoma, Geneva, Verda