Замена изображения на время прогрузки
Доброго времени суток уважаемые форумчане.
В общем, выкладываю в кратце. Есть сайт, есть профиль пользователя. В профиле пользователя есть возможность указать ICQ, Skype, Vkontakte. Скрипт автоматически проверяет статус Онлайн / Оффлайн у указанных данных пользователей. Например для ICQ используется такой HTML код: <image src='http://online.icq.com/scripts/online.dll?icq=632477212&img=5'> Собственно, из за прогрузки страница открывалась долго...в общем было принято решение ее ускорить, 10 часов стараний как решить данный вопрос, в общем решение было таким:
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
<script>
function loadingAjax(div_id)
{
$("#"+div_id).html('<img src="../assets/js/loaders/ajax-loader.gif"> saving...');
$.ajax({
type: "POST",
url: "../assets/js/loaders/check_icq.html",
data: "name=John&id=28",
success: function(msg){
$("#"+div_id).html(msg);
}
});
}
loadingAjax('myDiv');
</script>
<div id='myDiv'></div> Собственно вроде ничего сложного, проверка ICQ идет в отдельном файле ("../assets/js/loaders/check_icq.html"), тоесть после перехода на страницу профиля, у пользователя сначало загружается сама страница, а потом отдельно грузится ICQ. ВНИМАНИЕ! Вопрос! Вопрос первый. Не работает ../assets/js/loaders/ajax-loader.gif Тоесть по сути дела, пользователь заходит на страницу ему заместо картинки ICQ сначало показывается иконка загрузки, а потом выводится ICQ - это не работает. Нет иконки загрузки, через определенное время появляется (без иконки загрузки) иконка ICQ. Вопрос второй. Выглядит это все так (в опере) сначало выдается "Изображение" (текстом с квадратиком) ну а потом уже появляется иконка ICQ - как сделать что-бы небыло изображения? Тоесть какая та предзагрузка в моем понимании.. Изложил как можно больше. В общем по факту я не вижу сложностей. Помогите кто чем может, заранее спасибо! |
Решено!
<script language="JavaScript" type="text/javascript">
all_images = new Array (
"image/img_1.png",
"http://online.icq.com/scripts/online.dll?icq=632477212&img=5",
"image/img_3.png",
"image/img_4.png");
var ImgNum = 0;
var ImgLength = all_images.length - 1;
var delay = 2500;
var lock = false;
var run;
function chgImg(direction) {
if (document.images) {
ImgNum = ImgNum + direction;
if (ImgNum > ImgLength) { ImgNum = 0; }
if (ImgNum < 0) { ImgNum = ImgLength; }
document.slide_show.src = all_images[ImgNum];
}
}
function auto() {
if (lock == true) {
lock = false;
window.clearInterval(run);
}
else if (lock == false) {
lock = true;
run = setInterval("chgImg(1)", delay);
}
}
</script>
<div align="center">
<img src="../assets/js/loaders/ajax-loader.gif" name="slide_show"></td>
</div>
<script language="JavaScript" type="text/javascript">
auto();
</script>
|
| Часовой пояс GMT +3, время: 07:00. |