document.getElementById("txt").style=txt;为什么可以重置?
我是这么理解的,错了请指出,txt样式的CSS里面的,我们通过JS响应事件来改变txt里的样式属性,说白了就是用JS的样式去覆盖上面的样式,你这样写就等于拿上面的样式来覆盖JS的样式达到清空的效果,那问题来了,你这个txt从哪里来的?小心被老板打死(⊙﹏⊙)
直接为空 就重置了, <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" Content="text/html; charset=utf-8" /> <title>javascript</title> <style type="text/css"> body{font-size:12px;} #txt{ height:400px; width:600px; border:#333 solid 1px; padding:5px;} p{ line-height:18px; text-indent:2em;} </style> </head> <body> <h2 id="con">JavaScript课程</H2> <div id="txt"> <h5>JavaScript为网页添加动态效果并实现与用户交互的功能。</h5> <p>1. JavaScript入门篇,让不懂JS的你,快速了解JS。</p> <p>2. JavaScript进阶篇,让你掌握JS的基础语法、函数、数组、事件、内置对象、BOM浏览器、DOM操作。</p> <p>3. 学完以上两门基础课后,在深入学习JavaScript的变量作用域、事件、对象、运动、cookie、正则表达式、ajax等课程。</p> </div> <form> <!--当点击相应按钮,执行相应操作,为按钮添加相应事件--> <input type="button" value="改变颜色" > <input type="button" value="改变宽高" > <input type="button" value="隐藏内容" > <input type="button" value="显示内容" > <input type="button" value="取消设置" > </form> <script type="text/javascript"> var $=document.getElementById('txt'); var btn=document.forms[0].children; //定义"改变颜色"的函数 btn[0].onclick=function(){ $.style.color='#fff'; $.style.backgroundColor = '#000' } //定义"改变宽高"的函数 btn[1].onclick=function(){ $.style.width='80%'; $.style.height = '70%'; } //定义"隐藏内容"的函数 btn[2].onclick=function(){ $.style.display='none'; } //定义"显示内容"的函数 btn[3].onclick=function(){ $.style.display='block'; } //定义"取消设置"的函数 btn[4].onclick=function(){ var f=confirm('是否取消设置'); if(f){ $.style=''; } } </script> </body> </html>
如果前面var txt;那么txt就是undefined,document.getElementById("txt").style=undefined;自然就是清空,
如果前面var txt=1;document.getElementById("txt").style=1,也能清空;
只要定义了txt这个变量,而且这个变量的值又不是style的属性值(width=xxx,height=xxx),就可以清空,如果是它的属性值就更改
这里的txt什么也不是,你可以把后面的那个txt换成其他的,同时好像也能清空格式
同学,你可能吧object.style.property=newstyle这个语法和object.className=newclassName搞混了。