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