问答详情
源自:4-1 编程挑战

为何用className无法还原初始样式

<!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;}
p{
 line-height:18px;
 text-indent:2em;}
.txt{
    height:400px;
    width:600px;
    border:#333 solid 1px;
 padding:5px;
}
</style>
</head>
<body>
  <h2 id="con">JavaScript课程</H2>
  <div id="txt1" class="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()">;  
    <input type="button" value="改变宽高"  onclick="changesize()">
    <input type="button" value="隐藏内容"  onclick="playnone()">
    <input type="button" value="显示内容"  onclick="showon()">
    <input type="button" value="取消设置"  onclick="cancelfit()">
  </form>
  <script type="text/javascript">
    var mytxt=document.getElementById("txt1");
//定义"改变颜色"的函数
    function changecolor()
    {
        mytxt.style.color="red";
        mytxt.style.backgroundColor="#ccc";
    }

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

    function changesize()
    {
        mytxt.style.width="660px";
        mytxt.style.height="440px";
    }
//定义"隐藏内容"的函数
    function playnone()
    {
        mytxt.style.display="none";
    }
    
//定义"显示内容"的函数
    function showon()
    {
        mytxt.style.display="block";
    }

//定义"取消设置"的函数
    function cancelfit()
    {
        var cancel=confirm("是否要恢复默认值?");
        if(cancel==true)
        {
            mytxt.className="txt";
        }
    }


  </script>
</body>
</html>


提问者:eternalone 2015-08-14 13:39

个回答

  • Fetcode
    2015-10-04 17:12:16

    将上面的myTxt.className = "txt"改为 

    myTxt.style.cssText = "txt";
    就能解决你的问题了


  • Perona
    2015-08-14 14:08:59

    把之前做的样式改变移除掉即可,加上这一句

    mytxt.style="";
    function cancelfit()
    {
        var cancel=confirm("是否要恢复默认值?");
        if(cancel==true)
        {
            mytxt.style="";
            mytxt.className="txt";
        }
    }