hide()方法中的options是起什么作用的 调回函数中的setTimeout函数

<!DOCTYPE html>







jQuery UI hide Example







<!-- CSS -->

<br><br> .toggler-1 { width: 500px; height: 200px; }<br><br> #button-1 { padding: .5em 1em; text-decoration: none; }<br><br> #effect-1 { width: 240px; height: 160px; padding: 0.4em; position: relative; }<br><br> #effect-1 h3 { margin: 0; padding: 0.4em; text-align: center; }<br><br>

<br><br> $(function() {<br><br> function runEffect() {<br><br> $( &quot;#effect-1&quot; ).hide( &quot;shake&quot;, {times: 10, distance: 200}, 1000, callback );<br><br> };<br><br> // callback function to bring a hidden box back<br><br> function callback() {<br><br> setTimeout(function() {<br><br> $( &quot;#effect-1&quot; ).removeAttr( &quot;style&quot; ).hide().fadeIn();<br><br> }, 1000 );<br><br> };<br><br> // set effect from select menu value<br><br> $( &quot;#button-1&quot; ).click(function() {<br><br> runEffect();<br><br> return false;<br><br> });<br><br> });<br><br>









Hide





JavaTpoint provides easy and point to point learning of various tutorials

such as Java Tutorial, Core Java Tutorial, Android, Design Pattern, JavaScript,

AJAX, SQL, Cloud Computing, Python etc.







Shake Effect Hide





代码是这么写的,请问上述代码中{times:10, distance: 200}指的是什么?
在setTimeOut函数中 我们为什么要写 $( "#effect-1" ).removeAttr( "style" ).hide().fadeIn(); 那么长的一段代码,而不直接写$("#effect-1").fadeIn()呢?fadeIn()本身就表示淡入的意思。这里为什么还写着hide()呢?我们明明把元素hide了之后需要重现显示出来就不应该写hide().

options是可选的参数,{times:10, distance: 200}就是次数10,距离200

看jquery-ui文档,第二个参数是特效参数或者特效函数。
既然是对象当然是特效参数,特效参数显然是针对特效来说的。
那么jquery-ui的hide方法的参数第一个这里是shake,说明你的hide方法是的动画效果是shake,然后你就该查阅关于shake的特效参数有哪些。
shake: 指震动动画
参数有: times:次数 distance:距离。
然后翻译代码成汉字就是 执行震动10次 每次震动距离200 一般来说距离单位是px

追问:setTimeOut函数中为什么我们写了$( "#effect-1" ).removeAttr( "style" ).hide().fadeIn();如此长的代码 而不直接写$( "#effect-1" ).fadeIn();?