Heim > Web-Frontend > js-Tutorial > So implementieren Sie das verzögerte Laden von Bildern in js

So implementieren Sie das verzögerte Laden von Bildern in js

醉折花枝作酒筹
Freigeben: 2021-04-20 09:28:04
nach vorne
2587 Leute haben es durchsucht

Dieser Artikel gibt Ihnen eine detaillierte Einführung in die Methode des verzögerten Ladens von Bildern in js. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

So implementieren Sie das verzögerte Laden von Bildern in js

Lazy Loading von Bildern ist etwas, das die Frontend-Optimierung beherrschen muss. Lazy Loading von Bildern kann Bandbreite sparen und die Last auf unseren Webseiten reduzieren. Als nächstes werde ich die Methode zum verzögerten Laden von Bildern aufzeichnen, die ich beherrsche. Eine Möglichkeit zur Implementierung besteht zunächst darin, dass die Quelle unseres Bildes im Ansichtsfenster zuerst geladen wird, die Quelle, die sich nicht im Ansichtsfenster befindet, jedoch nicht geladen wird, wenn unsere Bildlaufleiste nach unten gleitet.
So implementieren Sie das verzögerte Laden von Bildern in js
Komm runter und lade
So implementieren Sie das verzögerte Laden von Bildern in js

Die Art und Weise, wie ich es umsetze, ist die Verwendung von Weapi, was relativ einfach ist. InstersectionObserver (offizielle Website InstersectionObserver).
Gehen wir direkt zum Code

<div>
			<img  data-src="https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=3225163326,3627210682&fm=26&gp=0.jpg" alt="So implementieren Sie das verzögerte Laden von Bildern in js" >
			<img  data-src="https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3228549874,2173006364&fm=26&gp=0.jpg" alt="So implementieren Sie das verzögerte Laden von Bildern in js" >
			<img  data-src="https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=1246451335,909670857&fm=26&gp=0.jpg" alt="So implementieren Sie das verzögerte Laden von Bildern in js" >
			<img  data-src="https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3609981743,3469269943&fm=26&gp=0.jpg" alt="So implementieren Sie das verzögerte Laden von Bildern in js" >
			<img  data-src="https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=3225163326,3627210682&fm=26&gp=0.jpg" alt="So implementieren Sie das verzögerte Laden von Bildern in js" >
			<img  data-src="https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3228549874,2173006364&fm=26&gp=0.jpg" alt="So implementieren Sie das verzögerte Laden von Bildern in js" >
			<img  data-src="https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=1246451335,909670857&fm=26&gp=0.jpg" alt="So implementieren Sie das verzögerte Laden von Bildern in js" >
			<img  data-src="https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3609981743,3469269943&fm=26&gp=0.jpg" alt="So implementieren Sie das verzögerte Laden von Bildern in js" >
		</div>
Nach dem Login kopieren

js-Teil

//获取全部图片的数组
const imgs = [...document.getElementsByTagName(&#39;img&#39;)]
		// IntersectionObserver
		if(IntersectionObserver){
			let lazyloadObser = new IntersectionObserver((entries,observer)=>{
				entries.forEach((entry,index) =>{
					let lazyImage = entry.target
					if(entry.intersectionRatio>0){
						lazyImage.src = lazyImage.getAttribute(&#39;data-src&#39;);
						lazyloadObser.unobserve(lazyImage)
					}
				})
			})	
		  for(let i = 0; i < imgs.length;i++){
			  lazyloadObser.observe(imgs[i])
		  }	
		}
Nach dem Login kopieren

[Empfohlenes Lernen: Javascript-Tutorial für Fortgeschrittene]

Das obige ist der detaillierte Inhalt vonSo implementieren Sie das verzögerte Laden von Bildern in js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
js
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage