我已经编写了两个自己的函数,我现在将自动运行,但延迟时间为1500毫秒。
当计数器达到7时,调用preDial()
函数。到目前为止这是有效的。
当preDial()
完成时,系统应等待1500毫秒并调用包含数组的dialSequence()
函数,并应执行带有所有赋值的each()
。
那么如何用延迟调用这两个函数呢?
到目前为止,这是我的代码:
var count = 0;
var IDs = [];
var red = '#CC1919';
var green = '#30944B';
var orange = '#FDCA39';
$('.glyphs').on('click', function(e) {
e.preventDefault();
count ++;
dataId = $(this).attr('data-id');
dataIcon = $(this).attr('data-icon');
IDs.push([count, dataId]);
$('#glyph-' + dataId).css('border-color', red);
$('a#glyphs-' + dataId).contents().unwrap();
if (count == 7) {
preDial();
$(this).delay(1500).dialSequence();
}
});
function preDial() {
$('.chevron-active').fadeIn('slow');
$('.chevron-active').fadeOut('slow');
$('#status').delay(750).text('Dialing . . .').css('color', orange);
$('#sg_dial_circle').delay(750).addClass('rotate_right');
}
function dialSequence(IDs) {
console.log('here');
$.each(IDs, function(index, value) {
console.log(value);
$('.chevron-active.chevron-0' + index).delay(index * 1000).fadeIn('slow');
$('.line-0' + index).delay(index * 1000).addClass('line-red');
});
}
由于
kay899
答案 0 :(得分:1)
setTimeout(function(){
dialSequence(IDs);
}, 1500);
没有jQuery更好,你忘了将ID传递给函数