虽然已经有人问过了,但我想解决正确 jQuery 编程的问题。
方法#1:
<script>
function DoClickAction() {
// Some work
return false;
}
</script>
<a href="#" id="ActionButton" onclick="DoClickAction();">Do some work</a>
VS
方法#2:
<script>
$(function() {
$("#ActionButton").on("click", DoClickAction);
}
function DoClickAction() {
// Some work
return false;
}
</script>
<a href="#" id="ActionButton">Do some work</a>
我正在和我的同事讨论这个问题,我认为这两种方法都有足够的利弊,不能说“这是正确的方法”,但如果我必须选择,我倾向于选择方法# 1、这是为什么:
方法#1优点:
- 在调试其他人的代码时,您可以轻松地跟踪当有人按下链接时执行了哪些 jQuery 代码。
- 当您动态加载(AJAX 调用)内容时,它将始终有效,无需重新绑定您的 jQuery 事件。
方法#2优点:
- 它将产生更少的 HTML 代码供浏览器下载,因为脚本文件将被缓存并且 onclick 属性不是必需的。虽然这个例子使用了更多的代码。
- 您可以通过使用相同的属性轻松地重用代码,尽管使用带有 1 功能的 onclick 是一回事。
您对此有何看法?