Javascript 性能 ? - 将事件放在 html 标签中,或绑定(bind)它们?

标签 javascript html performance events

我想知道哪个对性能更好......我有一个“网络应用程序”之类的东西。它有很多javascript。单击按钮时,隐藏的 div 变为可见。这个新的 div 有 5 个按钮。哪个对性能更好:

1.) 将按钮点击事件放在每个按钮的 html 标签中,例如 onClick="alert('hey');" 2.) 当 div 可见时将事件附加到每个按钮,然后当我隐藏包含按钮的 div 时删除事件?

我问的原因是因为我想如果 html 标记中的事件一直存在,页面可能会陷入困境。我认为当用户可以看到按钮以单击它们时,页面可能会更快地只包含这些事件。

任何帮助都很棒!谢谢!

最佳答案

我会使用 event delegation

通过这种方式,您可以自由添加/删除任何按钮,而不必担心在每个按钮上附加事件。这种方法的内存效率也更高,因为您始终只有一个事件处理程序,而不是每个按钮上直接有 N 个事件处理程序。

关于Javascript 性能 ? - 将事件放在 html 标签中,或绑定(bind)它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1507593/

相关文章:

javascript - Mousedown 事件不会在 select2 下拉列表中触发

java - 用于从 MySQL 数据库检索在线状态的任何性能解决方案

c# - Parallel.ForEach 在迭代结束时变慢

javascript - 如何让 jQuery UI Slider 小部件自动播放多年的文本时间轴?

javascript - 发出 HTTPs 请求时出现 "Error: getaddrinfo ENOTFOUND"错误

javascript - 为什么 CURL 的 PUT 在上传 payload 之前验证失败,而 XHR PUT 只是在之后?

javascript - 无法通过 jquery 附加 HTML 文件

javascript - 处理从 Angular $q.all 返回的结果

javascript - 根据 id jquery 验证选择字段

regex - 从相对 URL 确定完整 URL 的最快方法是什么(给定基本 URL)