使用jQuery attr div将GIF加载到div

时间:2014-02-27 20:18:11

标签: jquery html load captcha attr

    $('#captcha').attr('src', 'captcha.php?' + (new Date()).getTime());
});
</script>

并且效果非常好,imgid=captcha隐藏但加载GIF不希望在我取消注释load('#loading')或写出与此类似的内容时显示。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

您应该尝试以下代码:

$('#reload').click(function () {
    if ($(this).data('isLoading')) return;
    $(this).data('isLoading', true);
    var $container = $('#captcha').parent(),
        $loading = $('<div id="loading"/>');
    $('#captcha').hide(0, function () {
        $loading.prependTo($container)
    }).one('load', function () {
         $('#loading').remove();
        $(this).fadeIn(400, function () {           
            $('#reload').data('isLoading', false);
        });
    }).attr('src', 'captcha.php?' + $.now());
});

使用以下CSS:

#loading {
    float: left; /* <<< add this one */
    background: transparent url(obrazki/reload.gif) no-repeat center center; /* use transparent color, you btw should modificate img to fit with height */
    width: 80px;
    height: 35px;
}