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

代码放在head里面没有效果

我把js代码放在了head里面,document.write("开启JS之旅");这个可以打印出来,但document.getElementById("p1").style.color="blue";没起作用,想问下如何解决,期待大神们回答。

<!DOCTYPE HTML>
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=gb18030">
   <title>插入js代码</title>
   <script type="text/javascript">
   window.onload=function(){
       document.write("开启JS之旅!");
       document.getElementById("p1").style.color="blue";
   }
   </script>
</head>
<body>
<p id="p1">我要改变颜色</p>
</body>
</html>

正在回答

2 回答

<!DOCTYPE HTML>
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
   <title>插入js代码</title>
       <script type="text/javascript">
   
        document.write("开启JS之旅!");
     
       window.onload=function(){
        document.getElementById('p1').style.color="blue";
      }

   </script>
</head>
<body>
<p id="p1">我要改变颜色</p> 
</body>
</html>

当你用window.onload再document.write给页面赋值的时候,你已经改变了整个body的内容,p标签中的内容已经被代替了,已经找不到p标签了。正解如上

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

听羽 提问者

我也调试出来了,谢谢
2016-09-13 回复 有任何疑惑可以回复我~

js代码放在head处页面会先加载js里的内容然后再加载body里的内容,因为你在js里设置的颜色被后面的覆盖掉了,因此js代码最好放在</body>之前。

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

听羽 提问者

原因我知道,但我记得老师讲过可以放在head里面的,具体怎么写我忘了,我想知道放在head里面该怎么写,还有感谢你的回答。
2016-09-13 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

代码放在head里面没有效果

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