由于标题可能有点模糊或不清楚,我将首先解释我的两种方法的含义。在我的 HTML/JS 代码中,我混合了两种将事件附加到我的 html 元素的方式:(1) 我称之为“静态”的方式:
<input name="abc" class="def" id="xyz" onclick="do_something"/>
(2) 我所说的“动态”:
<input name="abc" class="def" id="xyz" />
和
$(document).ready(function() {
$('#xyz').click(function() { do_something; })
});
请注意,这不是真正的代码,只是作为示例呈现的内容。我也不必使用 jquery,同样可以通过简单的方式实现
document.onload = function() {
document.getElementById('xyz').onclick = function() { do_something; }
}
通常,如果逻辑非常简单(例如,在单击另一个元素时启用/禁用元素),我会使用静态方法。如果逻辑更复杂,我会使用动态的。当然,我也可以使用带有onclick="function_call()"
- 的静态方法,并将所有复杂的逻辑放入这个函数中,尽管这可能是我从旧时代(多年前)遗留在代码中的东西。
现在,我遇到了一些人会发誓其中一种方法并嘲笑任何会使用另一种方法的人,声称另一种方法是错误的/难以阅读/较慢/添加你自己的解释。但是,我还没有找到任何真正好的理由来始终坚持使用一种方法并不断混合这些方法。我是否遗漏了什么,或者真的没有充分的理由坚持使用一种方法?