【问题标题】:javascript onclick happening on page load页面加载时发生的javascript onclick
【发布时间】:2018-06-04 10:48:18
【问题描述】:

我正在尝试制作一个简单的 Javascript 函数,以便在单击图像时打开一个带有更大图像的窗口。发生的情况是此测试警报在页面加载时弹出,然后当我单击图像时什么也不做。这是代码

function zoom()
{
alert("test!");
}
document.getElementById("us").onclick=zoom();

【问题讨论】:

  • 当您添加“()”时,您正在调用该函数。您要做的是引用该函数。您发布的内容相当于编写这样的匿名函数:
  • document.getElementById("us").onclick = (function(){})();

标签: javascript onclick


【解决方案1】:

试试这个

function zoom()
{
    alert("test!");
}
document.getElementById("us").onclick=zoom;

【讨论】:

    【解决方案2】:
    function zoom()
    {
        alert("test!");
    }
    document.getElementById("us").onclick=function(){zoom(variable1)};
    

    如果你需要传递一个变量。

    【讨论】:

      【解决方案3】:

      对于 es6 onclick = () => zoom(i) 有效

      【讨论】:

        【解决方案4】:

        为什么不将 onclick 与 html 元素本身绑定,而不是在 javascript 中进行呢

          <img src="yourImage.jpg"  onclick="zoom()" />
        

        【讨论】:

        • 这没有提供问题的答案。要批评或要求作者澄清,请在其帖子下方发表评论。
        • 抱歉我的解决方案没有出现,因为它没有使用代码标签正确编辑
        【解决方案5】:
        document.getElementById("us").onclick=zoom;
        

        而不是

        document.getElementById("us").onclick=zoom();
        

        【讨论】:

          猜你喜欢
          • 2021-10-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-05-05
          • 1970-01-01
          • 2012-06-10
          相关资源
          最近更新 更多