为了账号安全,请及时绑定邮箱和手机立即绑定

已完成,最后的取消设置用的set_txt.removeAttribute('style');自己也不太懂

<!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="改变颜色" onclick="changecolor()"> 

    <label>

    <input type="button" value="改变宽高" onclick="changeheight()">

    <input type="button" value="隐藏内容" onclick="myhiden()">

    <input type="button" value="显示内容" onclick="myhiden2()">

    <input type="button" value="取消设置" onclick="del()">

  </form>

  <script type="text/javascript">

  var set_con=document.getElementById("con");

  var set_txt=document.getElementById("txt");

//定义"改变颜色"的函数

  function changecolor(){

     

     set_con.style.color="red";

     set_txt.style.backgroundColor="#ccc";

  }


//定义"改变宽高"的函数

 function changeheight(){

     set_txt.style.height="800px";

     set_txt.style.width="800px";

 }


//定义"隐藏内容"的函数

 function myhiden(){

    set_txt.style.display="none";

 }


//定义"显示内容"的函数

function myhiden2(){

    set_txt.style.display="block";

 }


//定义"取消设置"的函数

function del(){

     var mymessage=confirm("是否取消设置?");

    if(mymessage==true){

        set_txt.removeAttribute('style');

        set_con.removeAttribute('style');

        }


    else{

        

        }//定义"取消设置"的函数


}

 

  </script>

</body>

</html>


正在回答

6 回答

removeAttribute()这个方法就是删除元素属性中的style属性,在前面几个操作中,都对元素的属性style进行了操作,在最后一个取消操作中,直接将该属性删除就可以回复原样了

0 回复 有任何疑惑可以回复我~
#1

dadaddala

删除了为什么txt原来的样式还在
2015-07-08 回复 有任何疑惑可以回复我~
#2

北极猪 回复 dadaddala

removeAttribute('style'); 应该是对你之前做的样式(也就是'style')改变 进行了'remove'; txt部分就回复最初的状态了
2016-06-15 回复 有任何疑惑可以回复我~
#3

stay123 提问者

非常感谢!
2016-09-22 回复 有任何疑惑可以回复我~

我建议使用location.reload();虽然刷新了一下,但这样做,就算你创建了新元素,改变了除了txt之外的元素的style,照样能重置;

至于为什么不会清除掉之前的样式是因为DOM操作都是先解析好静态的内容,然后再对动态的改变进行实时刷新.之前你在css里的内容是浏览器的某个解析样式的模块提前就渲染好的,属于静态内容.也就是说静态的不会变,动态的他帮你刷新.你如果强制刷新就只有静态的内容了.

0 回复 有任何疑惑可以回复我~

这样做的话div的宽高是不会变的哇!

0 回复 有任何疑惑可以回复我~
sdf


0 回复 有任何疑惑可以回复我~

removeAttribute('style')方法不是删除,而是恢复。即将元素属性中的style属性全部恢复为默认值。

1 回复 有任何疑惑可以回复我~

删除了为什么txt原来的样式还在

0 回复 有任何疑惑可以回复我~
#1

奋斗_小青年

我觉得应该是删除除了style中以外的属性
2015-07-16 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

已完成,最后的取消设置用的set_txt.removeAttribute('style');自己也不太懂

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信