Dom学习
来源:互联网 发布:淘宝运费险退货流程 编辑:程序博客网 时间:2024/05/18 02:53
案例1:
创建三个输入文本框,当光标离开文本框时如果文本框为空,则将文本框的背景色设置为红色,如果不为空则为白色。提示:焦点进入控件的事件是onfocus,焦点离开控件的事件是onblur。
<script type ="text/javascript"> function initiail(){ var inputs=document.getElementsByTagName("input"); for(var i=0;i<inputs.length;i++){ var input=inputs[i]; input.onblur=function(){ if(this.value.length<=0) { this.style.background="red"; } else{this.style.background="white";} } } } </script></head><body onload ="initiail()"><input type ="text" /><input type ="text" /><input type ="text" /><input type ="text" /><input type ="text" /></body>
易错:单独修改样式的属性使用"style.属性名"。注意在css中属性名在JavaScript中操作的时候属性名可能不一样,主要集中在那些属性名中包含-的属性,因为JavaScript中-是不能做属性、类名的。所以CSS中背景颜色是background-color,而JavaScript则是style.background,元素样式名是class,在JavaScript中是calssName属性;font-size—>style.fontSize;margin-top—> style.marginTop。
实例:
<script type="text/javascript">
function say-hello()
{alert("hello");}
<body onload="say-hello()"></body>//报错:'say'未定义
单独修改控件的样式<input type="button" value="AAA" onclick="this.style.color='red'"/>
案例2:评分控件V1,用一个单行5列的Table做评分控件,监听td的click事件,点击一个td的时候,将这个td及之前的td背景变为红色,之后的td背景变为白色。鼠标在评分控件上的时候显示超链接形式的鼠标图标。 }
<script type ="text/javascript"> function initial(){ var tableid=document.getElementById("tableid"); var tds=tableid.getElementsByTagName("td"); for(var i=0;i<tds.length;i++){ var td=tds[i]; td.style.cursor="pointer"; td.onmouseover=tdOnclick; } } function tdOnclick(){ var tableid=document.getElementById("tableid"); var tds=tableid.getElementsByTagName("td"); var index= indexOf(tds,this); for(var i=0;i<=index;i++){ tds[i].style.color="green"; } for(var j=index+1;j<tds.length;j++){ tds[j].style.color="black"; } /*for(var i=0;i<tds.length;i++){ if(tds[i]==event.srcElement){ for(var j=0;j<=i;j++){ tds[j].style.color="green"; } for(var k=i+1;k<tds.length;k++){ tds[k].style.color="black"; } } }*/ } function indexOf(arr,element){ for(var i=0;i<arr.length;i++){ if(arr[i]==element){ return i; } } return -1; } </script></head><body onload ="initial()"><table id="tableid"><tr><td>☆</td><td>☆</td><td>☆</td><td>☆</td><td>☆</td></tr></table></body>
练习1:超链接的单选效果,页面上若干个超链接,点击一个超链接的时候被点击的超链接变为红色背景,其他超链接背景还原为白色。
<script type ="text/javascript"> function init(){ var links=document.getElementsByTagName("a"); for(var i=0;i<links.length;i++){ var link=links[i]; link.onclick=linkOnclick; } } function linkOnclick(){ var links=document.getElementsByTagName("a"); for(var i=0;i<links.length;i++){ var link=links[i]; if(link==this) { link.style.background="red"; } else{ link.style.background="white"; } } window.event.returnValue=false; } </script></head><body onload="init()"> <a href="http://www.sina.com.cn">新浪</a><br/> <a href="http://www.sina.com.cn">百度</a><br/> <a href="http://www.sina.com.cn">谷歌</a><br/> <a href="http://www.sina.com.cn">新华</a><br/> <a href="http://www.sina.com.cn">天涯</a><br/></body>
练习2:表格隔行变色:偶数行为黄色背景,奇数行为默认颜色
<script type ="text/javascript"> function init(){ var tableid=document.getElementById("tableid"); var trs=tableid.getElementsByTagName("tr"); for(var i=0;i<trs.length;i++){ if((i+1)%2==0){ trs[i].style.background="red"; } } } </script></head><body onload ="init()"><table id="tableid"><tr><td>dfddddddddddf</td></tr><tr><td>dfdfddddddddddd</td></tr><tr><td>dfdfddddddd</td></tr><tr><td>dfdddddddddddf</td></tr><tr><td>dfdfdddddddddd</td></tr><tr><td>dfddddddddddf</td></tr></table></body>
练习3:获得焦点的文本框黄色背景,其他控件背景颜色还原
<script type ="text/javascript"> function init(){ var inputs =document.getElementsByTagName("input"); for(var i=0;i<inputs.length;i++){ input=inputs[i]; input.onfocus=inputFocus; } } function inputFocus(){ var inputs =document.getElementsByTagName("input"); for(var i=0;i<inputs.length;i++){ input=inputs[i]; if(input==this){ input.style.background="yellow"; } else{ input.style.background="white"; } } } </script></head><body onload ="init()"><input type ="text" /><input type ="text" /><input type ="text" /><input type ="text" /><input type ="text" /></body>
练习4:点击表格行,被点击的行高亮显示(背景是黄色),其他行白色背景。监听每个tr的onclick事件,将点击的背景设置为黄色,其他的设置为白色背景。
<script type="text/javascript"> function init(){ var tableid=document.getElementById("tableid"); var trs=tableid.getElementsByTagName("tr"); for(var i=0;i<trs.length;i++){ tr=trs[i]; tr.onmouseover=trOnclick; tr.style.cursor="pointer"; } } function trOnclick(){ var tableid=document.getElementById("tableid"); var trs=tableid.getElementsByTagName("tr"); for(var i=0;i<trs.length;i++){ tr=trs[i]; if(tr==this){ tr.style.background="yellow"; } else{ tr.style.background="white"; } } } </script></head><body onload ="init()"><table id="tableid"> <tr><td>dfddddddddddd</td></tr> <tr><td>dfddddddddddd</td></tr> <tr><td>dfddddddddddd</td></tr> <tr><td>dfddddddddddd</td></tr> <tr><td>dfddddddddddd</td></tr> <tr><td>dfddddddddddd</td></tr></table></body>
- DOM学习---DOM对象
- Dom学习
- Dom学习
- DOM学习
- DOM学习
- DOM学习
- DOM学习
- Dom学习
- dom学习
- dom学习(一)
- Dom-Drag学习
- DOM学习初步
- DOM学习笔记
- DOM学习1
- Dom-Drag学习
- DOM学习笔记(一)
- DOM学习笔记(二)
- Dom-Drag学习
- Struts2中的 OGNL表达式
- 加大虚拟机硬盘空间
- 关于数组元素个数
- java synchronized详解(一)
- C++数组进阶——一维数组的应用及起泡法思路
- Dom学习
- Xcode 4 常用快捷键
- #define f(a, b) a##b
- 备份
- Linux异步IO操作
- 【Linux从零开始】:0.初识Linux
- json form javascript
- Learning OpenCV第十一章(1)
- 分享一个RTF转Image的方法,求高手优化