全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 1831|回复: 6

[已解决]javascript新手请教一个问题

[复制链接]
发表于 2017-4-28 15:07:09 | 显示全部楼层 |阅读模式
本帖最后由 kangsgo 于 2017-4-28 15:11 编辑

书上说该代码点击连接后会替换文本,然而我没有发生,是哪里写错了吗?

  1. <html>
  2.     <head>
  3.         <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  4.         <script type="text/javascript">
  5.             var d1 = document.getElementById("div1");
  6.             var a_link = document.getElementById("answer_link");
  7.             a_link.onclick = function()
  8.             {
  9.                    d1.innerHTML = "That is easy, the answer is <strong>4</strong>!";
  10.                return false;   
  11.             };
  12.         </script>
  13.     </head>
  14.     <body>
  15.     <div id="div1">
  16.         What is 2+2?
  17.     </div>
  18.     <div id="div2">
  19.         <a href="answer.html" id="answer_link">Get the answer</a>
  20.     </div>
  21.     </body>
  22. </html>
复制代码


参考连接:http://stackoverflow.com/questions/9552568/how-do-i-prevent-that-when-the-link-in-the-code-is-clicked-this-link-takes-me-to
发表于 2017-4-28 15:08:20 | 显示全部楼层
你要把js代码放在div2元素的后面,否则d1和a_link取不到值

点评

谢谢曼联传奇 威望 +9999  发表于 2017-4-28 15:11
发表于 2017-4-28 15:09:48 | 显示全部楼层
楼上已经说了,或者把 js 放到 window.onload = function(){ /* 放这里 */}
 楼主| 发表于 2017-4-28 15:12:39 | 显示全部楼层
rooney 发表于 2017-4-28 15:08
你要把js代码放在div2元素的后面,否则d1和a_link取不到值

那我看有些script写在<head>标签里面的,这样他们怎么取值的?
发表于 2017-4-28 15:16:10 | 显示全部楼层
kangsgo 发表于 2017-4-28 15:12
那我看有些script写在标签里面的,这样他们怎么取值的?

楼上的楼上说了,放到onload事件里面
 楼主| 发表于 2017-4-28 15:22:59 | 显示全部楼层
rooney 发表于 2017-4-28 15:16
楼上的楼上说了,放到onload事件里面

好的,谢谢曼联传奇
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-5-11 10:21 , Processed in 0.076039 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表