utenti StackOverflowCanvas vs DOM - Qual è il metodo di visualizzazione delle immagini più efficiente in HTML5?
Pur facendo un'applicazione HTML5/sito web, per tali casi, come una galleria di immagini, in cui vengono visualizzati un gran numero di immagini in sequenza o contemporaneamente nel browser, è l'uso dell'elemento canvas giustificato ?
Finché si tratta solo di presentare un'immagine, è possibile utilizzare una tela e disegnare l'immagine su di essa anziché utilizzare l'elemento DOM < img> tag? Ci saranno anche alcune manipolazioni dell'immagine, come trasformazioni CSS3/spostamento/ridimensionamento/zoom e riconoscimento dei gesti (trascinamento, tocco/tocco, forse pizzico, ecc.) Che, per quanto ne so, sono applicabili sia alla tela che al tag img.
Sarebbe anche importante mantenere le cose il più "html5" -ish possibile e tenendo conto anche delle prestazioni. Ad esempio, sarebbe importante se in futuro l'elemento canvas fosse sempre più utilizzato e ottimizzato dai browser e sarebbe importante anche se per il momento lo < img> sia molto più veloce.
Poiché stiamo considerando lo sviluppo di un'applicazione html5 universale, lavorando su desktop e anche su dispositivi mobili, le prestazioni e la velocità sono un fattore molto importante. Tuttavia, i test di confronto su tela e < img erano rivolti principalmente ai browser game javascript. In questo caso, l'animazione non è così importante come il consumo di memoria e le prestazioni generali.
Esistono risorse/studi relativi a questo aspetto particolare?
Il SEO non è davvero un fattore qui, solo prestazioni. Sono d'accordo con quello che hai detto sul non usare HTML5 solo per il gusto di usarlo. Il fatto è che devo anche prendere in considerazione ciò che potrebbe essere utile in futuro e sappiamo tutti che html5 è il futuro. Naturalmente, nessuno sa cosa riserva il futuro, ma ho notato app simili usando canvas e mi ha fatto chiedere perché e se c'è qualche vantaggio rispetto all'ovvio uso di < img > – BBog
@BogdanBucur - 'img' è tanto HTML5 quanto' canvas 'è! Era parte di HTML4, un build HTML5 in cima a quello. È parte del "futuro" come qualsiasi altra cosa. –
@BogdanBucur '' è una parte fondamentale di HTML, non sta andando da nessuna parte ** sempre **. Quello che hai descritto è una galleria di immagini molto semplice, la tela è davvero per i giochi e, a meno che tu non stia costruendo un gioco complicato con loop, fisica, stati, ecc., Non è assolutamente necessario usarlo. Ti suggerisco di guardare alcuni esempi di jQuery per vedere che è potente e ti renderai conto che non ne hai bisogno per gli effetti che hai menzionato. – Dunhamzzz