2015-08-05 5 views
0

Привет, у меня есть этот jQuery для загрузки содержимого в div с кодом кнопки, но загружаемый контент включает в себя изображения большого размера и хотел бы появиться, поскольку он загружается в предварительную загрузку div анимированным gif, как может привести к вне?Как я могу добавить preloader для загрузки содержимого div jquery?

код JQuery:

function chargue(div, of) 
{ 
$(div).load(of, function() { 
}); 
} 

Кнопка:

<a href="#next" onClick="chargue('#left','change.php')">CHANGE</a> 

CSS DIV #left:

#left { 
    width: 744px; 
    float: left; 
    height: 100%; 
    position:relative; 
} 
+0

Большое спасибо, можете ли вы показать мне пример того, как вы могли его реализовать? – pTRONICA

+1

Пожалуйста, см. Ниже ответ. Я разместил его только сейчас. –

ответ

1

Вы можете просто изменить к содержанию вашего div в анимированный GIF загрузки , затем, когда ваш ajax get() будет готов, замените div с результатами.

function chargue(div, of) 
{ 
    //insert loading gif 
    $(div).html('<img src="image/loading.gif">'); 

    //fetch larger images 
    $.get(of, function(results) { 
    $(div).html(results); 
    }); 
} 
+0

Кажется, что он работает хорошо, но не видит его, потому что локальная загрузка очень быстро, может дать время отображать даже секунду? – pTRONICA

+1

Если вы хотите подождать, чтобы показать результаты, используйте 'setTimeout (function() {$ (div) .html (results);}, 1000);' вместо '$ (div) .html (results);'. Затем отрегулируйте свое время соответственно. –

+0

Да, это замечательно, сенсационно !!!!! Большое спасибо – pTRONICA

1
function chargue(div, of) 
{ 
    $('#loader').show(); 
    $(div).load(of, function(response, status, xhr) { 
     if(status == 'sucess'){ 
     $('#loader').hide(); 
     } 
    }); 
} 

Пожалуйста, создайте один дочерний элемент DIV под #left дел. И поставьте ваш загрузчик gif. Примечание: #loder div должен быть скрыт по умолчанию.

Смежные вопросы