JavaScript と CSS を使用したフェードインおよびフェードアウト
HTML 要素のフェードインおよびフェードアウト効果を作成すると、 Web アプリケーションの視覚的な魅力。ただし、これらの効果の実装は、特にフェードイン機能が正しく機能していない場合に困難になる場合があります。
以前の実装では、フェードイン機能は期待どおりに要素の不透明度を増加させませんでした。代わりに、0.1 で固定されたままになりました。この問題に対処するために、より効率的な方法を提供します。
<code class="javascript">function unfade(element) { var op = 0.1; // initial opacity element.style.display = 'block'; var timer = setInterval(function () { if (op >= 1) { // If opacity reaches 1 clearInterval(timer); } element.style.opacity = op; element.style.filter = 'alpha(opacity=' + op * 100 + ")"; op += op * 0.1; }, 10); }</code>
この関数は、初期不透明度 0.1 から始まり、1.0 に達するまで段階的に不透明度を増加させ、スムーズなフェードイン効果をもたらします。
フェードアウトの場合、上記のコードを次のように置き換えます。
<code class="javascript">function fade(element) { var op = 1; // initial opacity var timer = setInterval(function () { if (op <= 0.1) { // If opacity drops below 0.1 clearInterval(timer); element.style.display = 'none'; } element.style.opacity = op; element.style.filter = 'alpha(opacity=' + op * 100 + ")"; op -= op * 0.1; }, 50); }</code>
この関数は、不透明度が 0.1 に達するまで継続的に減分し、要素を非表示にして目的のフェードアウト効果を作成します。
潜在的なセキュリティ リスクのため、setInterval または setTimeout の引数として文字列を使用することは避けることが重要であることを覚えておいてください。
以上がJavaScript と CSS でスムーズなフェードインおよびフェードアウト効果を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。