问答详情
源自:3-5 显示和隐藏(display属性)

为什么两个函数都要声明mychar?

mychar分两次声明和一次性声明的图,我已经试过一次性声明,是错的。但是为什么呢?想不明白

575bed9500013a6c04910391.jpg

575bed960001042504800410.jpg


提问者:aiyayo 2016-06-11 18:53

个回答

  • 啊啊啊啊123
    2016-06-18 10:24:37
    已采纳

    <!DOCTYPE HTML>

    <html>

    <head>

    <meta http-equiv="txttent-Type" txttent="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()">  

        <input type="button" value="改变宽高" onClick="changeSize()">

        <input type="button" value="隐藏内容" onClick="hidetext()">

        <input type="button" value="显示内容" onClick="showtext()">

        <input type="button" value="取消设置" onClick="resettext()">

      </form>

      <script type="text/javascript">

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

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

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

    function changeColor(){

        mydiv.style.color="red";

        mydiv.style.backgroundColor="#ccc";

    }


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

    function changeSize(){

        mydiv.style.width="200px";

        mydiv.style.height="300px";

    }


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

    function hidetext(){

        mydiv.style.display="none";

    }


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

    function showtext(){

        mydiv.style.display="block";

    }


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

    function resettext(){

        var mychose = confirm();

        if(mychose==true){

           mydiv.removeAttribute("style");

        }

    }


      </script>

    </body>

    </html>


  • 慕侠6330644
    2016-08-18 15:13:25

      var mychar;

           function hidetext()  

    {  

    mychar = document.getElementById("con");

            mychar.style.display="none"

    }  

    function showtext()  

    {  

    mychar = document.getElementById("con");

            mychar.style.display="block"

    }

    var声明的变量是局部变量,但是你可先声明然后在函数里面赋值

  • y1n符丶
    2016-06-11 19:35:53

    局部变量,你只声明一个的话,下面的函数是无法调用这个变量的

  • Nalvy
    2016-06-11 19:34:01

    局部变量