如果这听起来像是在征求意见,抱歉,我并没有表现得更好。
我的问题是,为什么有必要用匿名函数替换像onclick
这样的属性?有什么好处?
例如,我有一个需要更新的网页,所以我需要替换
<input id="text" onfocus="this.blur()">
通过
<input id="text">
.
.
<script>
$('#text').focus(function(){this.blur()});
<script>
但这是做什么的?这比原来的具体优势是什么?我搜查了,但我找不到任何真正的理由,只有意见。
答案 0 :(得分:2)
有很多理由不使用dom0事件。 你可以在“不引人注目的javascript”主题下找到其中一些。 http://en.wikipedia.org/wiki/Unobtrusive_JavaScript
解耦标记和行为是最明显的一个
答案 1 :(得分:1)
主要优点是清晰度和灵活性:
答案 2 :(得分:1)
一个很好的优点是,这可以使您的HTML更简单&amp;更轻,可以加载和渲染更快,而你的底部的JavaScript仍在加载。如果你考虑性能,最好在一开始加载HTML(&amp; css),最后加载脚本。
此外,它将代码与标记分开,使所有内容更少 搞砸了,更系统,更容易调试。
你不能简单地在属性中编写庞大的java脚本代码就会变得不方便,无论如何都要为复杂的逻辑编写函数。