今回はJSを操作して透明度のグラデーションアニメーションを実現する方法を紹介します。 注意点をJSで操作して透明度のグラデーションアニメーションを実現する方法を紹介します。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>JS透明度变化效果</title> <style> body{ margin: 0px; padding: 0px; } .redb{ width:200px; height: 200px; background: red; filter:alpha(opacity=30); opacity: 0.3; } </style> </head> <body> <p class="redb" id="opbtn"></p> <script> window.onload = function(){ var opp = document.getElementById("opbtn"); opp.onmouseover = function(){ startMove(100); } opp.onmouseout = function(){ startMove(30); } } var timer = null; var alpha = 30; var speed = 0; function startMove(opTarget){ clearInterval(timer); var opp = document.getElementById("opbtn"); timer = setInterval(function(){ if(alpha<opTarget){ speed = 10; } else if(alpha>opTarget){ speed = -10; } if(alpha==opTarget){ clearInterval(timer); } else{ alpha += speed; opp.style.opacity = alpha/100; opp.style.filter = 'alpha(opacity='+alpha+')'; } },100); } </script> </body> </html>
概要:
1. フィルターと不透明度の違い: w3c 標準の透明度は不透明度であり、フィルターは IE でのみ使用でき、他のブラウザーは不透明度をサポートします
2 透明度を変更する場合、透明度の値は取得できません。 offsetLeft に似たメソッドなので、変数を別途作成する必要があります
3. timer を timer に割り当てることを忘れないでください
キャッシュ呼び出しチェーンを使用して JS メソッドのオーバーロードを実装する手順の詳細な説明
以上がJSを操作して透明度グラデーションアニメーションを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。