将var变量写在function外面怎么对function函数不起作用

来源:3-5 显示和隐藏(display属性)

鬼谷子钢

2016-08-29 09:18

代码一   var变量直接写在function函数里,有显示与隐藏的效果;

代码二     var变量直接写在function函数外,没有有显示与隐藏的效果;

代码一:

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>显示和隐藏</title>

<script type="text/javascript">

function hidetext()

{

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

myp.style.display="none";

}

function showtext()

{

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

myp.style.display="block";

}

</script>

</head>

<body>

  <h1>JavaScript</h1>

  <p id="con"> 作为一个Web开发师来说,如果你想提供漂亮的网页、令用户满意的上网体验,JavaScript是一个必不可少的工具。</p>

  <form>

<input type="button" onclick="hidetext()" value="不显示段落内容"/>

<input type="button" onclick="showtext()" value="显示段落内容"/>

 </form>

</body>

</html>

代码二:

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>显示和隐藏</title>

<script type="text/javascript">

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

function hidetext()

{

myp.style.display="none";

}

function showtext()

{

myp.style.display="block";

}

</script>

</head>

<body>

  <h1>JavaScript</h1>

  <p id="con"> 作为一个Web开发师来说,如果你想提供漂亮的网页、令用户满意的上网体验,JavaScript是一个必不可少的工具。</p>

  <form>

<input type="button" onclick="hidetext()" value="不显示段落内容"/>

<input type="button" onclick="showtext()" value="显示段落内容"/>

 </form>

</body>

</html>


写回答 关注

4回答

  • Dove丨BVB
    2016-08-29 11:20:15
    已采纳

    var你可以理解为局部变量,出函数就被销毁。你可以试试把var去掉,这样就能定义全局变量了,不过全局变量不便于维护

    鬼谷子钢

    你说的也是一种方法;前面也有人问过,看了一下,说是js的读码顺序影响的,要把script部分放在p标签后面就可以,我试了一下,确实如此;但是为什么如果在function中定义var不受位置的影响,放在head中也有效果;

    2016-08-29 15:26:23

    共 1 条回复 >

  • 鬼谷子钢
    2016-08-29 15:24:38

    谢谢各位大神,不过只能给一个最佳回答,不好意思了!再次感谢

  • qq_小盛开_0
    2016-08-29 11:06:18

    function XX(),你把他想象成一个盒子,var 声明的东西,就是里面的玩具,所以,你把玩具放外面就不是盒子里面的东西了呢!~

  • 慕粉aiaiaia
    2016-08-29 11:01:21

    在函数的()里引用变量

JavaScript入门篇

JavaScript做为一名Web工程师的必备技术,本教程让您快速入门

739814 学习 · 9566 问题

查看课程

相似问题