javascript点击事件处理程序在没有点击的情况下触发

标签 javascript function event-handling click

为什么这个函数在没有点击指定按钮的情况下被触发? 我看过一些类似的问题,但没有一个处理这个代码结构(可能是我缺少这个的明显原因......)。

document.getElementById("main_btn").addEventListener("click", hideId("main");

function hideId(data) {
    document.getElementById(data).style.display = "none";
    console.log("hidden element #"+data);
}

最佳答案

你直接调用它。

document.getElementById("main_btn").addEventListener("click", hideId("main");

您应该在回调中执行此操作。

document.getElementById("main_btn").addEventListener("click", function (){
    hideId("main");
});

关于javascript点击事件处理程序在没有点击的情况下触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43042901/

相关文章:

javascript - 使用 javascript 循环 Json 数组得到错误的输出

javascript - vue dev工具中的警告

c# - 当我不能使函数本身成为静态时如何调用非静态函数

c - 如何将数组传递给 C 中的函数

python - 如何将字符串变量从一个函数传递到另一个函数?

javascript - 使用 jQuery 更改元素文本和数据值?

javascript - Jquery FullCalendar - 禁用单个日期的大小调整

android - 以编程方式从代码中读取日志并与 Android 应用程序中的字符串匹配

python - 基于协程的状态机

javascript - 在特定条件下手动调用事件处理程序时 IE 出错