2017-12-23 10 views
0

Ich lade alle JPG/PNG-Bilder aus einem Ordner und an ein Element anhängen und wenn das Element dann "bereit" ist, gebe ich einige Hover-Effekte und so . Nachdem ich die Seite zum ersten Mal geladen habe, laden sich die Bilder jedoch nicht mehr, wenn ich sie aktualisiere. Hier ist der Code, mit dem ich die Bilder lade.Bilder geladen über jQuery laden nicht nach dem ersten Laden der Seite

var folder = "images/"; 
$.ajax({ 
    url: folder, 
    success: function (data) { 
     $(data).find("a").attr("href", function (i, file) { 
      if (file.match(/\.(jpe?g|png)$/)) { 
       $("div#whatever").append("<img class='gallery' src='"+ folder + file +"'>"); 
      } 
     }); 
    } 
}); 

Wieder, es funktioniert, aber wenn ich die Seite aktualisieren, es nicht mehr lädt sie, wenn ich meine Cache gespeicherten Bilder in Chrome löschen. Gibt es eine Möglichkeit, eine Aktualisierung zu erzwingen? Wäre das der richtige Weg, um überhaupt etwas zu unternehmen?

+0

Wenn Sie Refresh sagen, reden Sie vollständige Seitenaktualisierung oder teilweise Seitenaktualisierung? – Devesh

+0

@Devesh Ich meine F5. Also nehme ich an, dass das ganze Seite ist. –

Antwort

0

Try Math.floor((Math.random() * 1000) + 1) zu verwenden ist dies eine Zufallszahl, es zu Ihrem Bild src hinzufügen .. OR Sie cache: false in Ajax versuchen müssen, kann

var folder = "images/"; 
var RandomNum = Math.floor((Math.random() * 1000) + 1); 
$.ajax({ 
    url: folder, 
    cache: false, //<<<<<<<<<<<<<<<< here 
    success: function (data) { 
     $(data).find("a").attr("href", function (i, file) { 
      if (file.match(/\.(jpe?g|png)$/)) { 
       $("div#whatever").append("<img class='gallery' src='"+ folder + file +"?"+RandomNum +"'>"); 
      } 
     }); 
    } 
}); 
+0

Das Gleiche passiert. –

+1

@JohnLeo hast du 'cache: false' in Ajax ?? –

+0

Ich denke, die Zufallszahl in der Datei sollte nicht erforderlich sein, da Bild-Caching gute Sachen ist. @Mohamed-Yousef – Devesh

Verwandte Themen