10 자바스크립트 지연 로드 이미지 라이브러리
Intersection Observer는 요소가 뷰포트/뷰에 들어갈 때 조건부로 일부 작업을 수행하는 API입니다. 따라서 성능과 사용자 경험을 극대화하기 위해 Intersection Observer API를 사용하는 Javascript 지연 로드 이미지 라이브러리가 있습니다.
Yall.js
yall.js는 CSS 배경 이미지뿐만 아니라 img, 그림, 비디오 및 iframe 요소를 위한 기능이 가득한 SEO 친화적인 지연 로더입니다. IE 11을 포함한 모든 최신 브라우저에서 작동합니다. 가능한 경우 Intersection Observer를 사용하지만 버전 3부터 이 API는 이전 브라우저에 대해 폴리필되어야 합니다. 또한 초기 로드 후 DOM에 추가된 요소를 지연 로드하기 위해 Mutation Observer를 사용하여 변경 사항에 대해 DOM을 모니터링할 수 있습니다. 이는 단일 페이지 애플리케이션에 바람직할 수 있습니다. 또한 requestIdleCallback을 사용하여 브라우저 유휴 시간 사용을 최적화하고 requestAnimationFrame을 사용하여 버벅거림을 줄일 수 있습니다.
글루베르트
gluebert.js는 동적 가져오기 및 코드 분할을 사용하여 DOM 요소, StyleSheets 및 JavaScript 파일을 지연 로드하는 작은 도우미입니다.
cox com 미니박스 활성화
액세스 가능한 이미지 지연 로드
접근성에 중점을 둔 지연 로딩에 다른 접근 방식을 추가한 경량의 비의존적 자바스크립트 모듈입니다. 대부분의 기존 옵션은 이미지의 src 속성을 삭제하거나 이미지의 base64 데이터/저해상도 대체 버전을 만들거나 img 요소를 noscript 태그에 포함하는 방식으로 작동합니다. 이것은 해키하고 장황할 수 있으며 주요 문제는 원래 요소의 의미를 변경한다는 것입니다.
http //폭스노우/활성화
로자드.js
반응형 이미지, iframe 등에 대한 종속성이 없는 순수 JS의 고성능, 가벼운 1kb 및 구성 가능한 지연 로더입니다. 최근에 추가된 Intersection Observer API를 사용하여 이미지, iframe, 광고, 비디오 또는 기타 요소를 지연 로드하는 것을 목표로 작성되었으며 엄청난 성능 이점이 있습니다. 기존의 지연 로딩 라이브러리는 스크롤 이벤트에 연결하거나 주기적인 타이머를 사용하고 지연 로딩이 필요한 요소에 대해 getBoundingClientRect를 호출합니다. 그러나 이 접근 방식은 getBoundingClientRect를 호출할 때마다 브라우저가 전체 페이지를 다시 레이아웃하도록 강제하고 웹 사이트에 상당한 버벅거림이 발생하므로 매우 느립니다. 이를 보다 효율적이고 성능 있게 만드는 것이 IntersectionObserver가 설계된 목적이며 Chrome 51에 도입되었습니다. IntersectionObserver는 관찰된 요소가 브라우저의 뷰포트에 들어오거나 나갈 때 알려줍니다.
레이지로드
LazyLoad는 콘텐츠 이미지, 비디오 및 iframe이 뷰포트에 들어갈 때만 로드하여 웹 애플리케이션의 속도를 높이는 빠르고 가볍고 유연한 스크립트입니다. 낱낱이 적혀있다 바닐라 자바스크립트 , IntersectionObserver API를 활용하고 반응형 이미지와 함께 작동하며 기본 지연 로딩을 지원합니다. 스크롤 및 크기 조정 이벤트를 수신하는 대신 LazyLoad는 새롭고 매우 빠른 방법인 Intersection Observer API를 사용하여 요소가 브라우저 뷰포트 내부에 있는지 감지합니다. 사용자는 속도가 느린 장치나 컴퓨터에서도 차이를 볼 수 있습니다.
그리드 테스트
간단한 Img 반응
IntersectionObserver API 및 우선 순위 힌트를 사용하여 지연 로드 이미지에 반응합니다.
V 게으른 이미지
Intersection Observer를 사용하여 이미지를 지연 로드하고 프로그레시브 렌더링 및 CSS 애니메이션을 적용합니다. Intersection Observer API를 사용하여 뷰포트에 들어갈 때 이미지를 자동으로 지연 로드하는 Vue.js 구성 요소.
경계.js
비동기식 경계 감지 – 지연 로딩, 무한 스크롤 등. 이미지를 지연 로드하든, 무한 스크롤을 구현하든, 전 연인을 피하든 상관 없습니다. 경계를 설정하는 것이 중요합니다. 역사적으로 경계 감지에는 이벤트 핸들러, 루프 및 getBoundingClientRect에 대한 호출이 필요했습니다. 이러한 작업은 메인 스레드에서 실행되기 때문에 성능이 저하됩니다. Bounds.js는 이러한 기대에 부응하여 간단하고 강력한 API를 제공합니다. 요소 간의 교차를 비동기적으로 감지하여 메인 스레드에서 복잡한 작업을 유지하고 성능을 향상시킵니다.
뷰포트에서
ng-in-viewport는 Intersection Observer API를 사용하는 지시문을 제공합니다. To는 대상 요소와 상위 요소 또는 최상위 문서의 뷰포트와의 교차점에서 변경 사항을 비동기식으로 관찰하는 간단한 방법을 제공합니다.
게으른 관찰자 로드
Intersection Observer를 사용하여 이미지를 지연 로드하는 라이브러리입니다.
커뮤니티 클라우드의 예
#자바스크립트 #프로그래밍