下面我有两个jQuery选择器。链接事件和DOM迭代
第一次搜索缓存对象中的DOM元素,然后搜索其父对象,然后为父对象(table)搜索另一个dom元素。 (ex.2)
第二行(2行)通过缓存元素进行搜索。 (前1)
$('element', table.setting.body).on('blur focus', table.focus).parents('parent').find('another element').on('click', function); // ex2
$('element', table.setting.body).on('blur focus', function); // ex 1
$('another element', table.setting.body).on('click', function); // ex 1
哪一个是更快/最佳做法?例子:
Ex。毫无疑问,1会更快地回应jQuery函数,即。 .hide().animate().show()
但是,何时搜索DOM元素?
两者之间的差异将会非常小,可能不值得担心。我会选择2,只是因为它会更容易维护。 –
http://jsperf.com/ –
在这个特殊的例子中,我同意,但是在一个更大规模的应用程序中绑定多个元素/迭代一个更大的dom,它可能会有所作为,我不知道。很高兴知道,在其他例子中它可能是有用的。 –