我以下列方式使用 Jquery Airport:
$('#basketTotal').airport([s]);
$('#basketTotal').html(s);
这是机场功能:
(function($){
$.fn.extend({
airport: function(array) {
var self = $(this);
var chars = ['1','2','3','4','5','6','7','8','9','0','.','£'];
var longest = 0;
var items = items2 = array.length;
function pad(a,b) { return a + new Array(b - a.length + 1).join(' '); }
$(this).empty();
while(items--)
if(array[items].length > longest) longest = array[items].length;
while(items2--)
array[items2] = pad(array[items2],longest);
spans = longest;
while(spans--) {
$(this).prepend("<span class='c" + spans + "'></span>");
}
function testChar(a,b,c,d){
$(self).find('.c'+a).html((chars[b]==" ")?" ":chars[b]);
setTimeout(function() {
if(b > chars.length)
testChar(a+1,0,c,d+1);
else if(chars[b] != array[c].substring(d,d+1).toLowerCase())
testChar(a,b+1,c,d);
else
testChar(a+1,0,c,d+1);
}, 15);
}
testChar(0,0,0,0);
}
});
})(jQuery);
我只会将一个字符串传递给机场函数(而不是字符串数组)。机场无限期地运行并且不会停止,但我需要让它停止并$('#basketTotal').html(s);
在它完成时执行。
如何在完成动画的一次迭代时使函数停止?