這個step、progress有什么作用,怎么用的?arguments中的數(shù)組的值是從哪里傳遞過來的?動畫step動畫的顯示效果為什么會從100減到50,是怎么實現(xiàn)的?第二按鈕的效果為什么顯示兩行,最終進(jìn)度為什么是1?
$("#exec").click(function() {
??????? var v = $("#animation").val();
??????? var $aaron = $("#aaron");
??????? if (v == "1") {
??????????? //觀察每一次動畫的改變
??????????? $aaron.animate({
??????????????? height: '50'
??????????? }, {
??????????????? duration :2000,
??????????????? //每一個動畫都會調(diào)用
??????????????? step: function(now, fx) {
?????????????????? $aaron.text('高度的改變值:'+now)
??????????????? }
??????????? })
??????? } else if (v == "2") {
??????????? //觀察每一次進(jìn)度的變化
??????????? $aaron.animate({
??????????????? height: '50'
??????????? }, {
??????????????? duration :2000,
??????????????? //每一步動畫完成后調(diào)用的一個函數(shù),
??????????????? //無論動畫屬性有多少,每個動畫元素都執(zhí)行單獨的函數(shù)
??????????????? progress: function(now, fx) {
?????????????????? $aaron.text('進(jìn)度:'+arguments[1])
??????????????????? // var data = fx.elem.id + ' ' + fx.prop + ': ' + now;
??????????????????? // alert(data)
??????????????? }
??????????? })
??????? }
??? });
2017-06-22
感謝!
2016-11-21
1、.animate(properties,options)中包含兩個參數(shù),options參數(shù)包括幾種,其中step:規(guī)定每個動畫的每一步完成之后要執(zhí)行的函數(shù);progress:每一次動畫調(diào)用的時候會執(zhí)行這個回調(diào),就是一個進(jìn)度的概念。
2、arguments中數(shù)組值代表函數(shù)第幾個參數(shù)。這里arguments[1]代表第二個參數(shù),則是代表fx。
3、這個程序沒有提供完整,在程序上面應(yīng)該會定義原先的塊級高度是100,動畫中目標(biāo)高度是50,所以執(zhí)行動畫時從100減到50。
4、顯示為1代表動畫進(jìn)度完成到百分百。效果為兩行不知道是什么意思,看定義的樣式。