iPhone Safari: la rimozione della cache non sembra sufficiente

Sto sviluppando un sito web mobile e sto usando un iPhone per testarlo. Uno dei .jpg usati era difettoso e visualizzato come un rettangolo nero nel browser Safari di iPhone. Il codice è stato poi modificato e ora è presente un'image .png. Per qualche ragione anche dopo aver eliminato la cache di Safaris che l'image è ancora nera e ho bisogno di un nuovo telefono che non abbia mai visitato il sito prima di visualizzarlo correttamente.

Perché questo accade e come posso risolverlo?

Suona come un bug / feature di iPhone in cui cache alcune immagini (e non li chiami correttamente).

La correzione sembra essere quella di inserire un numero random in una string di query dopo le immagini sul tuo sito.

ad esempio picture1.png? 2011242424

Alcuni frameworks web lo faranno automaticamente (ad es. Rotaie). Altrimenti potresti farlo solo sull'image interessata e vedere se la correzione.

Puoi provare a navigare sull'image stessa, aggiornando quella pagina – che solitamente cancella la cache per l'image.

Tuttavia la migliore pratica nello sviluppo del web è seguire i consigli di @RobZolkos su mettere una string di numbers dopo l'image src. Quando si cambia l'image, si modifica il numero, che lo obbliga a caricare nuovamente. Un po 'fuori argomento, ma controlla la cachezzazione HTML5 Boilerplate che fa questo per te automaticamente nello script di build.