- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
假设我有一些要设置动画的元素:
$('.hey').show(1000).slideUp(1000);
这和有什么区别:
$('.hey').show(1000, function() {
$(this).slideUp(1000);
});
就内部发生的事情而言?据我所知,动画在 jQuery 中是异步的。所以第一个例子,show
和 slideUp
应该同时触发。在第二个中,slideUp
应该仅在 show
结束后触发。
然而,出于某种原因,人们喜欢 on this answer说他们是“相同的”。尽管(显而易见的)它们的工作方式不同(在第一个示例中,返回将立即发生,与第二个示例不同),但为什么它们是相同的?
最佳答案
Yet, for some reason, people like on this answer say they're the "same".
你是对的,他们不是。如果不止一个元素匹配.hey
,它们之间的区别特别大。但是对于您引用的代码,尽管它们采取的步骤顺序不同,但它们最终做的事情几乎相同。
Why are they same despite the (obvious) fact they work different (in the first example, the return will happen immediately, unlike with the second one)?
在这两个示例中,代码都会立即运行并完成(“返回”)。
在第一个示例中,对 slideUp
的调用立即发生但是 jQuery 通过将 slideUp 动画添加到动画队列的末尾并返回来处理该调用;实际的 slideUp 稍后发生,当到达动画队列时。
在第二个示例中,对 show
的调用立即发生,稍后当动画完成时,对 slideUp
的调用完成。
多个元素与您的选择器匹配时的主要区别在于,在您的第一个示例中,一次调用slideUp
,它将 slideUp 操作添加到动画队列中您调用它的 jQuery 对象中的当前元素集。在第二个,有多次完成回调调用,每个元素完成时调用一次。
Arun P Johny 强调了另一个非常重要的区别在 the comments : 如果您稍后要向这些相同的元素添加另一个动画函数,对于第一个示例,它会被添加到队列之后 slideUp
,但在第二个示例中,slideUp
将在其他动画之后。
但是对于您引用的代码,虽然他们采取不同的道路到达那里,但他们最终做的事情几乎相同。
关于javascript - jQuery 链接与动画函数的回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35037253/
C语言sscanf()函数:从字符串中读取指定格式的数据 头文件: ?
最近,我有一个关于工作预评估的问题,即使查询了每个功能的工作原理,我也不知道如何解决。这是一个伪代码。 下面是一个名为foo()的函数,该函数将被传递一个值并返回一个值。如果将以下值传递给foo函数,
CStr 函数 返回表达式,该表达式已被转换为 String 子类型的 Variant。 CStr(expression) expression 参数是任意有效的表达式。 说明 通常,可以
CSng 函数 返回表达式,该表达式已被转换为 Single 子类型的 Variant。 CSng(expression) expression 参数是任意有效的表达式。 说明 通常,可
CreateObject 函数 创建并返回对 Automation 对象的引用。 CreateObject(servername.typename [, location]) 参数 serv
Cos 函数 返回某个角的余弦值。 Cos(number) number 参数可以是任何将某个角表示为弧度的有效数值表达式。 说明 Cos 函数取某个角并返回直角三角形两边的比值。此比值是
CLng 函数 返回表达式,此表达式已被转换为 Long 子类型的 Variant。 CLng(expression) expression 参数是任意有效的表达式。 说明 通常,您可以使
CInt 函数 返回表达式,此表达式已被转换为 Integer 子类型的 Variant。 CInt(expression) expression 参数是任意有效的表达式。 说明 通常,可
Chr 函数 返回与指定的 ANSI 字符代码相对应的字符。 Chr(charcode) charcode 参数是可以标识字符的数字。 说明 从 0 到 31 的数字表示标准的不可打印的
CDbl 函数 返回表达式,此表达式已被转换为 Double 子类型的 Variant。 CDbl(expression) expression 参数是任意有效的表达式。 说明 通常,您可
CDate 函数 返回表达式,此表达式已被转换为 Date 子类型的 Variant。 CDate(date) date 参数是任意有效的日期表达式。 说明 IsDate 函数用于判断 d
CCur 函数 返回表达式,此表达式已被转换为 Currency 子类型的 Variant。 CCur(expression) expression 参数是任意有效的表达式。 说明 通常,
CByte 函数 返回表达式,此表达式已被转换为 Byte 子类型的 Variant。 CByte(expression) expression 参数是任意有效的表达式。 说明 通常,可以
CBool 函数 返回表达式,此表达式已转换为 Boolean 子类型的 Variant。 CBool(expression) expression 是任意有效的表达式。 说明 如果 ex
Atn 函数 返回数值的反正切值。 Atn(number) number 参数可以是任意有效的数值表达式。 说明 Atn 函数计算直角三角形两个边的比值 (number) 并返回对应角的弧
Asc 函数 返回与字符串的第一个字母对应的 ANSI 字符代码。 Asc(string) string 参数是任意有效的字符串表达式。如果 string 参数未包含字符,则将发生运行时错误。
Array 函数 返回包含数组的 Variant。 Array(arglist) arglist 参数是赋给包含在 Variant 中的数组元素的值的列表(用逗号分隔)。如果没有指定此参数,则
Abs 函数 返回数字的绝对值。 Abs(number) number 参数可以是任意有效的数值表达式。如果 number 包含 Null,则返回 Null;如果是未初始化变量,则返回 0。
FormatPercent 函数 返回表达式,此表达式已被格式化为尾随有 % 符号的百分比(乘以 100 )。 FormatPercent(expression[,NumDigitsAfterD
FormatNumber 函数 返回表达式,此表达式已被格式化为数值。 FormatNumber( expression [,NumDigitsAfterDecimal [,Inc
我是一名优秀的程序员,十分优秀!