1

我了解到您可以在 HTML 或 Javascript 中声明事件处理程序。我的问题是,在 Javascript 或 HTML 中这样做更好吗?这有什么不同吗?如果是这样,为什么?

4

2 回答 2

1

几乎总是 JavaScript。它更干净、更易于维护并将 HTML 与 JavaScript 分开。

例如,你可以这样写:

<button onclick="do_something(this)">Button 1</button>
<button onclick="do_something(this)">Button 2</button>
<button onclick="do_something(this)">Button 3</button>
<button onclick="do_something(this)">Button 4</button>

或者您可以将 HTML 保留为 HTML 并从脚本中绑定事件处理程序:

$('button').click(function() {
    // Do something
});
于 2013-04-08T05:10:29.837 回答
0

这在很大程度上取决于您的要求。添加内联侦听器并不比添加类或 id 更困难,因此您是在服务器(即内联)还是客户端(动态)添加它们取决于适合特定情况的内容。将它们串联起来可以让维护代码的任何人都清楚地了解监听器所在的位置,只需查看服务器代码或生成的 HTMl。否则,他们必须搜索脚本文件以找出它们的位置。

只需使用对您来说最有效的东西。

于 2013-04-08T05:45:26.580 回答