Анимация загрузки картинки
Вот мой код подскажете что подправить чтобы был такой эффект
[HTML]
var DivObjPicCreate = false;
var DivObjPic;
if (DivObjPicCreate==false){
DivObjPic= document.createElement("DIV");
DivObjPic.setAttribute('id','showpic');
document.getElementsByTagName('body')[0].appendChild(DivObjPic);
DivObjPic.className = 'showpic';
DivObjPicCreate = true;
DivObjPic.innerHTML = '<img src="includes/images/mini_loading.gif" alt="" id="imgeShowPic">';
}
function showPic(Obj, img){
var PicDivImg = document.getElementById('imgeShowPic');
DivObjPic.style.display = 'table';
PicDivImg.src = img;
Obj.onmouseout = function(){
PicDivImg.src = "includes/images/mini_loading.gif";
DivObjPic.style.display = 'none';
}
document.onmousemove = function(e){
var vc = document.getElementsByTagName((document.compatMode && document.compatMode=="CSS1Compat") ? "HTML":"BODY")[0];
var x = window.event ? event.clientX + vc.scrollLeft : e.pageX;
var y = window.event ? event.clientY + vc.scrollTop : e.pageY;
var vcwidth = vc.clientWidth ? vc.clientWidth + vc.scrollLeft : window.innerWidth + window.pageXOffset;
var vcheight = vc.innerHeight ? window.innerHeight + window.pageYOffset : vc.clientHeight + vc.scrollTop;
if((x + DivObjPic.offsetWidth) > vcwidth) DivObjPic.style.left = (x - DivObjPic.offsetWidth - 4)+'px'; else DivObjPic.style.left = (x + 15)+'px';
if((y + DivObjPic.offsetHeight + 19) > vcheight) DivObjPic.style.top = (y - DivObjPic.offsetHeight)+'px'; else DivObjPic.style.top = y+'px';
}
}
[/HTML]
В моем же случаи картинка появляется в диве и в нем же догружается
<img src="loading.gif" alt="Загружается..." id="image-view-loading" />
<img src="none.gif" alt="" id="image-view-loaded" />
</div>
<script><!-- //
// ...
function startLoading(url)
{
var img1 = document.getElementById('image-view-loading');
var img2 = document.getElementById('image-view-loaded');
// Показать сообщение о загрузке.
img1.style.display = '';
// Скрыть изображение.
img2.style.display = 'none';
// Обработчик вызываемый когда изображение загрузится.
img2.onload = function () {
// Как только картинка загрузится, показать ее и
// скрыть картинку с сообщением о загрузке.
img1.style.display = 'none';
img2.style.display = '';
};
// Начать загрузку.
img2.src=url;
}
// ...
//--></script>[/HTML]
Добавлено: опередили )) и так даже проще ;)
Наверное, я совсем плохой стал, но не представляю как AJAX прикрутить к данной задаче.
Nixus Спасибо принцип понят
PS: а про AJAX - посылаешь запрос на картинку, а пока грузится выводишь индикатор... aka "анимация загрузки"...