0

我正在开发一个简单的验证码系统,如果不可读,它使用 jquery 来刷新图像。

$('a#reload').click(function(){

    $(this).removeClass('reload').addClass('reloading');

    var ts = Math.round((new Date()).getTime() / 1000);

    $('div#captcha-image img').attr('src', 'captcha/captcha.php?t=' + ts);

    $('input#captcha').focus();

});

除了将重新加载按钮重置为其初始状态之外,此代码执行所有操作。

综上所述,我想创建这个函数,就像 ajax 中的回调函数一样。

$(this).removeClass('reloading').addClass('reload');

该函数将重新加载按钮重置为其初始正常状态,那么在一切都过去之后如何调用它。

谢谢。

4

2 回答 2

1
$('a#reload').click(function(){

    $(this).removeClass('reload');

    var ts = Math.round((new Date()).getTime() / 1000);

    $('div#captcha-image img').attr('src', 'captcha/captcha.php?t=' + ts);

    $('input#captcha').focus();

    $(this).removeClass('reloading').addClass('reload');
});

这似乎微不足道,所以我不确定我是否完全理解这个问题。

于 2011-08-18T17:03:48.630 回答
1

您需要添加:

 $('div#captcha-image img').load(function(){
     $(a#reload).removeClass('reloading').addClass('reload');
 });

因此,如果您的图像是有效图像并且已加载,则 .load() 将等到完成调用回调并更改链接。

于 2011-08-18T17:09:21.663 回答