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

“取消设置”没有反应

<!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;}
.rc{
    color:#000;
    background:#fff;
    height:400px;
    width:600px;
    display:block;}    
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()">  
    <input type="button" value="改变宽高" onclick="changewh()">
    <input type="button" value="隐藏内容" onclick="hide()">
    <input type="button" value="显示内容" onclick="block()">
    <input type="button" value="取消设置" onclick="clearit()">
  </form>
  <script type="text/javascript">
//定义"改变颜色"的函数
    function changecolor(){
        var cc=document.getElementById("txt");
        cc.style.color="red";
        cc.style.backgroundColor="gray";
    }
//定义"改变宽高"的函数
    function changewh(){
        var cwh=document.getElementById("txt");
        cwh.style.width="300px";
        cwh.style.height="200px";
    }
//定义"隐藏内容"的函数
    function hide(){
        var hidecontent=document.getElementById("txt");
        hidecontent.style.display="none";
    }
//定义"显示内容"的函数
    function block(){
        var bb=document.getElementById("txt");
        bb.style.display="block"; 
    }
//定义"取消设置"的函数
    function clearit(){
         var mychar = document.getElementById("txt");  
        if(confirm("Do you want to move all out?"))
        {
            mychar.className="rc";
        }
     
    }

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

提问者:Kern_0001 2015-10-06 00:44

个回答

  • Kusoku
    2015-10-06 01:07:10
    已采纳

    在前面几个函数中通过style属性操作的样式是元素行内样式,优先级很高,跟内部样式表是有差别的,执行前面几个函数后,再通过改变类名添加样式也没法覆盖,而且之前id选择器作用的样式也没有移除,所以跟你预期会差别很大,如果要移除,就要分别移除行内样式以及id选择器设置的样式