当一个函数在JQuery中链接时,操作的顺序是什么?
示例1
$(selector).fun1(val,{fun2(){ }}
示例2
$(selecter).fun1().fun2().fun3()
答案 0 :(得分:8)
从左到右。对fun3()
fun2()
的结果(=返回值)fun2()
运行fun1()
。
这种链接可以在JQuery中完成,因为每个可链接的函数都返回它被调用的对象/元素。
因此$(selector).fun1()
在执行后返回$(selector)
元素。从返回的元素调用fun2()
,依此类推。
答案 1 :(得分:6)
在这个例子中:
$(selector).fun1(val,{fun2(){ }}
第一个函数的参数是callback function。这意味着fun1
执行那么 fun2
执行。
在这个例子中:
$(selecter).fun1().fun2().fun3()
如果有持续时间,就像动画一样,所有功能都会尽快被解雇。否则,它们会按顺序执行fun1
,fun2
,fun3
。
因此,对于动画,fun1
,fun2
和fun3
将是3个同时重叠的动画,但对于其他同步操作,它们只是按顺序发生。
答案 2 :(得分:0)