Ho creato un dispositivo di scorrimento immagine (basato sul fantastico bxSlider) che precaricherà le immagini just-in-time prima che esse vengano visualizzate. Funziona abbastanza bene già, ma non penso che la mia soluzione sia HTML valido.Immagine vuota codificata come dati uri
mia tecnica è come segue: I generare il codice cursore sull'immagine prima slitta con essendo inserito come al solito (con <img src="foo.jpg">
) e le immagini successive viene fatto riferimento in un attributo di dati come <img data-orig="bar.jpg">
. Un Javascript quindi manipola la modifica data-orig -> src
quando necessario, attivando il preloading.
In altre parole, sono:
<div class="slider">
<div><img src="time.jpg" /></div>
<div><img src="data:" data-orig="fastelavn.jpg" /></div>
<div><img src="data:" data-orig="pels_strik.jpg" /></div>
<div><img src="data:" data-orig="fashion.jpg" /></div>
</div>
Per evitare vuoti src=""
attributi (che sono harmful to performance in some browsers), ho inserito src="data:"
per inserire efficacemente un'immagine vuota come segnaposto.
Il fatto è che non riesco a trovare nulla nel documentation for data-URI dicendo se questo è un URI di dati valido o meno. Fondamentalmente voglio l'URI di dati minimi che si risolve in un'immagine vuota/trasparente, in modo che il browser possa risolvere immediatamente lo src e andare avanti (senza errori o richieste di rete). Forse src="data:image/gif;base64,"
sarebbe meglio?
Basta usare l'hash vuoto. http://stackoverflow.com/a/28077004/3841049 – iGidas
@ iGidas: cattiva idea, dato che molti browser eseguiranno effettivamente una seconda richiesta alla pagina principale (causando un impatto molto peggiore rispetto all'immagine originale e creando voci confuse nel tuo registri del server), provare a interpretare l'HTML come un'immagine, generare un errore e potenzialmente causare errori reali dell'applicazione (ad esempio nei carrelli degli acquisti/nelle pagine di pagamento in cui l'aggiornamento della pagina provoca l'aggiunta di ulteriori elementi nel carrello o attiva misure di sicurezza) –
Che dire dei dati reali: image/gif; base64, 'usati come' src'? O anche dati più brevi:, 'termina con un coma. Sembra essere un codice HTML valido e funziona in tutti i browser moderni senza errori. Qualche argomentazione contro il suo utilizzo? – bobo