script里的onclick函数调用是否加括号问题

今天在写HTML的时候,遇到了script里面的onclick函数调用的问题,直接上代码

<body>
    <div class="content">
      <p>
         喜欢的人叫什么:<span id="name"></span><br>
         喜欢的人漂亮吗:<span id="isbeau"></span><br>
         喜欢的人可爱吗:<span id="isLove"></span><br>
      </p>

    </div>
    <div class="button">显示

    </div>
    <script>
      function showMessage(){

      var json={
          "name":"MY",
          "isbeau":"貌美如花",
          "isLove":"可爱至极",

      }
      document.querySelector("#name").innerHTML=json['name'];
      document.querySelector("#isbeau").innerHTML=json['isbeau'];
      document.querySelector("#isLove").innerHTML=json['isLove'];
      }

      oButton=document.querySelector(".button");
      oButton.onclick=showMessage;
    </script>
  </body>

这里最后的oButton.οnclick=showMessage();右边的函数是加了括号的,一开始这样写的时候,在网页上应该是点击按钮然后才显示出相关的信息,但是出错了,网页加载完毕所有的信息就显示出来了。看看代码应该是onclick这边出了问题。想了一会。觉得右边调用的函数可能有问题,应该是直接就执行了一遍,老规矩百度一遍,果然没错,问题就是处在这里。总结了一下,如果加了括号就代表将这个函数的返回值直接赋给了onclick事件,也就是说页面直接会触发onclick的效果,不需要点击,所以应该是将这个函数赋值给点击事件,而不是这个函数的返回值。
问题就是这个,有时间就写下来记录一下。明天也要加油啊,哎,你要问我MY是谁,一个很特别很重要的人,她就是我最大的bug。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值