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

把 var mychar = document.getElementById("con"); 这句话提出来了,为啥点击事件无效了呢

<!DOCTYPE HTML>

<html>

<head>

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

<title>display</title>

    <script type="text/javascript"> 

    var mychar = document.getElementById("con");        //因为看见这句话都一样,就提出来了,怎么就不对了

        function hidetext()  

{  

// var mychar = document.getElementById("con");

        mychar.style.display="none";

}  

function showtext()  

{  

// var mychar = document.getElementById("con");

        mychar.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>


正在回答

3 回答

同意一楼的 ,   你要把把你的js 部分放到body的底部.  

因为程序都是从上到下 从左到右加载的.  像你现在这样. 当程序加载到js 部分  

 var mychar = document.getElementById("con");  如这一句  

因为还没加载到文本部分.

系统就会判定id为"con"的元素不存在, 这样你的函数也就进行不下去了

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

phpmadman

仁兄高见,学习了
2016-04-26 回复 有任何疑惑可以回复我~
#2

李朵拉 提问者

非常感谢!
2016-04-27 回复 有任何疑惑可以回复我~
#3

食肉兽0_0

太棒了
2017-04-20 回复 有任何疑惑可以回复我~

如果把var mychar = document.getElementById("con"); 提出来的话,JavaScript语言就识别不出来你要装饰的是那个部分了

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

代码没有错,但是你要将js代码放在body的最后或者是body的下面,或者,在js代码外面套一个window.onload,等页面加载完了,再加载js代码。

你的代码之所以没有按你想的显示,是因为JS已经先加载了,而后面body里面的内容还没有加载完,就出错了。

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

举报

0/150
提交
取消

把 var mychar = document.getElementById("con"); 这句话提出来了,为啥点击事件无效了呢

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