предварительно загрузить изображение с помощью jquery - PullRequest
0 голосов
/ 21 апреля 2010

Обновлен:

Ели добавить пустое изображение и промежуток с текстом

скрыть загрузочное изображение, после его загрузки показывается изображение

var pathimg = "path/to/image" + "?" + (new Date()).getTime();

$('#somediv').append('<div><span>loading..</span><img  id="idofimage" src="" alt="" ></div>')

jQuery("#idofimage").hide().attr({"src":pathimg})
                .load(function() {
                jQuery(this).show();
}); 

старый пост хорошо, я потратил 2 дня, пытаясь предварительно загрузить изображения, но безуспешно! у меня есть эта функция:

jQuery.getlastimage = function(id) {
    $.getjs();
        $.post('operations.php', {'operation':'getli', 'id':id,}, function(lastimg){
            $("#upimages" + id).html('<a href="uploads/'+ lastimg +'?'+ (new Date()).getTime() +'"><img class="thumbs" id="' + id + '" alt="' + lastimg + '" src="uploads/' + lastimg +'?'+ (new Date()).getTime() + '" /></a>');

        });
};

lastimg - название изображения

во время загрузки изображения я хочу отобразить gif или текст "Загрузка ...".

функция получит что-то вроде этого:

<div class="upimage">
  <ul class="thumbs" id="upimagesQueue">    
  **<li id="#upimagesRIFDIB">
            <a href="uploads/0001.jpg?1271800088379">
                <img src="uploads/0001.jpg?1271800088379" alt="0001.jpg" id="RIFDIB" class="thumbs">
            </a>
    </li>**

    <li>
          ....
    </li>
  </ul>
</div>

Я пытался так:

    ...
$.post('operations.php', {'operation':'getli', 'id':id,}, function(lastimg){
$("#upimages" + id)
.html('<a href="uploads/'+ lastimg +'?'+ (new Date()).getTime() +'"><img class="thumbs" id="' + id + '" alt="' + lastimg + '" src="uploads/' + lastimg +'?'+ (new Date()).getTime() + '" /></a>')
.hide()
.load(function() {
    $(this).show();
});

...

но все <li> будут скрыты, и после загрузки появится изображение, я хочу, чтобы <li> появилось с gif или текстом в нем, а после загрузки изображения ссылка и изображение на apear! 1027 *

Как это сделать? У кого-нибудь есть идея? Спасибо!

1 Ответ

0 голосов
/ 21 апреля 2010

Это определенно вопрос без простого ответа.

jQuery: динамическая обработка изображений (ожидание загрузки)

Я получил несколько действительно хороших предложений в этой теме, когда я спрашивал раньше, и я никоим образомпервым спросить.

Судя по всему, лучший способ проверить это циклически перебрать функцию, установить интервал и ждать, пока триггеры, которые вы установили на каждом изображении, вернутся положительными для нагрузки, но я обнаружил, чтодаже если он хорошо работает для загрузки страниц AJAX, он не пуленепробиваемый.

...