什么是执行jQuery .change()的最佳方法
我有两个单独的脚本,基本上做同样的事情。 我随着时间的推移建立了它们,并且发现我使用了几种不同的方法来获得相同的结果。
我想在两种情况下标准化并使用最佳实践方法。
我测试更改事件的一种方法是:
$('input[name="status"]').change(function() {});
我测试更改事件的另一种方法是:
$("#email").bind("change", function(e) {});
哪种方式最好? 2之间有什么区别?
感谢您帮助我理解这一点。
在jQuery 1.7之前, change()
只是 bind("change")
的捷径 。
但是从1.7开始,引入了on()
,并且更喜欢bind()
。 现在意味着change()
是on("change")
的快捷方式,实际上所有bind()
调用现在都会on()
内部调用on()
。
简而言之,他们做同样的事情。 我发现on()
(或bind()
)的显式使用更可取,但只要你在整个代码库中保持一致,我就没有看到任何真正的差异。
有人可能会说使用change()
over on("change")
是“更好”,因为“change”这个词中的拼写错误会在第一个实例中抛出一个解析错误(“undefined is is a function”),但是用on()
默默地失败……但显然你的unit testing会抓住它,对吧? )。