必要に応じて div のスタイルを動的に設定する必要がある場合があります。もちろん、経験豊富な JavaScript 開発者にとって、これはすべて非常に簡単ですが、初心者や関連する経験のない開発者にとっては、大したことも小さかったこともありません。この効果を実現する方法を例を使って簡単に紹介します。
コード例は次のとおりです:
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <head> <title>动态设置div的样式</title> <style type="text/css"> div{ width:50px; height:50px; background:red; margin-top:10px; } .bg{ background-color:blue; } </style> <script type="text/javascript"> window.onload=function(){ var firstDiv=document.getElementById("firstDiv"); var secondDiv=document.getElementById("secondDiv"); var first=document.getElementById("first"); var second=document.getElementById("second"); first.onclick=function(){ firstDiv.style.backgroundColor="green"; } second.onclick=function(){ secondDiv.className="bg"; } } </script> </head> <body> <div id="firstDiv"></div> <div id="secondDiv"></div> <input type="button" value="使用style方式" id="first" /> <input type="button" value="使用className方式" id="second" /> </body> </html>
上記のコードは要件を満たしていますが、2 つのメソッドを使用しています。1 つは style メソッド、もう 1 つは className メソッドです。
特記事項:
1. style を使用する場合、background-color などの単語属性はキャメルケース (2 番目の単語の最初の文字が大文字) で記述し、backgroundColo の形式で記述する必要があります。
2. className を使用する場合、属性値はクラスのスタイル名になりますが、前にドット (.) を追加することはできません。
PS: JavaScript を使用して div 属性を動的に変更する方法
この記事の例では、JavaScript で div 属性を動的に変更する実装方法を説明します。皆さんの参考に共有してください。詳細は以下の通りです。
ここでは、JS を通じて div 属性、スタイルなどを動的に変更できます
<script type="text/javascript"> var oBox = document.getElementById('box'); var oDiv = document.getElementById('div1'); var aInput = document.getElementsByTagName('input'); var aAttr = ['width', 'height', 'backgroundColor', 'display', 'display']; var aValue = ['200px', '200px', 'red', 'none', 'block']; for(var len=aInput.length,i=0;i<len;i++){ aInput[i].index = i; //索引 aInput[i].onclick = function(){ //重置按钮,cssText清空DIV属性 if(this.index == aInput.length - 1)oDiv.style.cssText = ""; //设置DIV属性 property(oDiv, aAttr[this.index], aValue[this.index]); }; } //控制DIV属性 function property(obj, attr, value){ obj.style[attr] = value; } </script>
この記事が皆様の JavaScript プログラミング設計に役立つことを願っています。