JQuery Hızlı görüntü anahtarlama

2 Cevap php

Benim db verilere bağlı olarak bir harita görüntüsünü üreten bir php sınıfı var. Bu periyodik bir serInterval döngü aracılığıyla güncellenir.

Ben hiçbir titremesi ile güncelleştirmek için çalışıyorum ama ben yapamam. Ben hiçbir başarı ile farklı yöntemler (preloader, imageswitcher) denedim.

//first load

function map()  {

$("#map").html("<img src=map.php?randval="+Math.random()+">");
}


//update it from setInterval calls

function updatemap()  {

$("#map").fadeOut(function() { 
      $(this).load(function() { $(this).fadeIn(); }); 
      $(this).attr("src", "map.php?randval="+Math.random()); 
    })
 }

Hiç titreme ile görüntüyü güncellemek için herhangi bir yolu var mı? Ben bir solmaya bir INMEDIATE takas insteado tercih ederim.

Ben yaşıyorum sorun updatemap () çağrıldıktan sonra görüntü sadece dissapears olmasıdır. ¿Belki ben ayrıştırma am nitelik src ile ilgili bir sorun var?

Yardımlarınız için teşekkürler.

2 Cevap

Sen hala çok hafif titreşimi alabilirsiniz.

function updatemap() {
    var img = new Image();
    img.onload = function(){
        $("#map img").attr("src", img.src);
    }
    img.src = "map.php?randval="+Math.random();
}

Önce gizli bir unsuru haline sonraki haritalar yüklemeniz gerekir. Onlar yüklü olduğunuzda, sonra onları içeri takas

<div id = "map"></div>
<img id = "load-map" src = "" alt = "" />

$(document).ready(function(){
   $("#map").html("<img src=map.php?randval="+Math.random()+">");
   setTimeout(loadImage,5000);
}

function loadImage()
{
  $("#load-map")
    .attr('src','map.php?randVal='+Math.random())
    .load(function(){
      $("#map img").src($("#load-map").src);
      setTimeOut(loadImage,5000);
    });
}