웹 프론트엔드 JS 튜토리얼 jQuery 지연 로드 지연 로딩에 대한 자세한 설명

jQuery 지연 로드 지연 로딩에 대한 자세한 설명

Dec 27, 2016 pm 03:43 PM

Lazy Load는 JavaScript로 작성된 jQuery 플러그인으로, 긴 페이지의 이미지 로드를 지연시킬 수 있습니다. 사용자가 페이지를 해당 위치로 스크롤할 때까지 브라우저의 표시 영역 외부에 있는 이미지는 로드되지 않습니다. 이미지 사전 로드가 처리되는 방식과 반대입니다.

큰 이미지가 많이 포함된 긴 페이지에서 이미지를 지연 로드하면 표시되는 이미지를 로드한 후 페이지 로드 속도가 빨라질 수 있습니다. 다운그레이드 처리에도 도움이 됩니다.

가로 스크롤

컨테이너 내 가로 스크롤

컨테이너 내 세로 스크롤

있습니다. 페이지에 많은 이미지

5초 후 이미지 로드

AJAX를 사용하여 이미지 로드

사용 방법

Lazy Load에 의존 jQuery. HTML의 끝 부분, 즉 &lt ;/body> 앞에 다음 코드를 추가하세요.

변경해야 합니다. 이미지의 태그입니다. 이미지의 주소는 data-original 속성에 있어야 합니다. 지연 로딩 이미지에 특정 클래스(예: 지연)를 부여합니다. 이렇게 하면 이미지 플러그인 번들링을 쉽게 수행할 수 있습니다. 코드는 다음과 같습니다.

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.lazyload.js"></script>
로그인 후 복사


이렇게 하면 게으른 클래스가 있는 모든 이미지의 로드가 지연됩니다.

<img class="lazy" alt="" width="640" height="480" data-original="img/example.jpg" />
$(function() {
 $("img.lazy").lazyload();
});
로그인 후 복사
데모. : 기본 옵션

TIPS: 이미지의 너비와 높이는 여기에서 설정해야 합니다. 그렇지 않으면 플러그인이 제대로 작동하지 않을 수 있습니다.


임계값 설정

기본적으로 이미지가 화면에 나타날 때 로드됩니다. 이미지를 미리 로드하려는 경우 임계값을 200으로 설정하면 됩니다. 이미지가 화면에서 200픽셀 떨어져 있을 때 로드되도록 합니다.

로드를 트리거하는 이벤트를 설정합니다. 🎜>

클릭, 마우스오버 등의 jQuery 이벤트를 사용할 수 있습니다. sporty 및 foobar와 같은 사용자 정의 이벤트를 사용할 수도 있습니다. 기본값은 사용자가 아래로 스크롤하여 이미지가 뷰포트에 나타날 때까지 기다리는 것입니다. 사용자가 클릭할 때만 이미지 로드:
$("img.lazy").lazyload({
 threshold : 200
});
로그인 후 복사


데모: 5초 지연 후 이미지 로드

특수 효과 사용
$("img.lazy").lazyload({
 event : "click"
});
로그인 후 복사

기본적으로 플러그인은 이미지가 완전히 로드될 때까지 기다렸다가 show()를 호출합니다. 원하는 효과를 사용할 수 있습니다. 아래 코드에서는 fadeIn(페이드 인 효과)을 사용합니다.

데모: 페이드 인 효과

JavaScript가 활성화되지 않은 경우

거의 모든 브라우저에서는 JavaScript가 활성화되어 있습니다. 그러나 JavaScript를 지원하지 않는 클라이언트에서는 실제 이미지를 표시하고 싶을 수도 있습니다. 브라우저가 JavaScript를 지원하지 않는 경우에는 <noscript> 태그에 실제 이미지 조각을 작성할 수 있습니다.
$(&quot;img.lazy&quot;).lazyload({
 effect : &quot;fadeIn&quot;
});
로그인 후 복사


CSS를 통해 자리 표시자를 숨길 수 있습니다.

&lt;img class=&quot;lazy&quot; data-original=&quot;img/example.jpg&quot; width=&quot;640&quot; heigh=&quot;480&quot;&gt;
&lt;noscript&gt;&lt;img src=&quot;img/example.jpg&quot; width=&quot;640&quot; heigh=&quot;480&quot;&gt;&lt;/noscript&gt;
로그인 후 복사


JavaScript를 지원하는 브라우저에서는 DOM이 준비되면 자리 표시자를 표시해야 하며, 이는 플러그인이 초기화되는 동시에 수행할 수 있습니다.

$("img.lazy") .show().lazyload();
.lazy {
 display: none;
}
로그인 후 복사

그림이 컨테이너 안에 있습니다

스크롤 막대가 있는 DIV 요소와 같이 스크롤 가능한 컨테이너의 그림에 플러그인을 사용할 수 있습니다. 컨테이너를 jQuery 객체로 정의하고 이를 초기화 메소드에 매개변수로 전달하기만 하면 됩니다.

데모: 컨테이너에서 가로 스크롤, 컨테이너에서 세로 스크롤

이미지가 불연속적입니다

페이지를 스크롤할 때 Lazy Load는 로드된 이미지를 반복하면서 이미지가 표시 영역 내에 있는지 확인합니다. 기본적으로 첫 번째 이미지를 찾으면 반복이 중지됩니다. 이미지는 스트리밍 방식으로 배포되는 것으로 간주됩니다. 예, 페이지의 이미지 순서는 HTML 코드의 순서와 동일하지만 일부 레이아웃에서는 그렇지 않습니다. true 그러나

failurelimit를 10으로 설정하면 플러그인이 로드되는 동작을 제어할 수 있습니다. 눈에 보이는 영역에 없는 이미지가 10개 발견되면 검색을 중단합니다. 레이아웃이 복잡하다면 이 매개변수를 더 높게 설정하세요.

숨겨진 사진 불러오기
$(&quot;img.lazy&quot;).lazyload({
 failure_limit : 10
});
로그인 후 복사

숨겨진 사진이 많을 수 있습니다. 예를 들어, 플러그인은 목록을 필터링하는 데 사용되며, 성능을 향상시키기 위해 지연 로드는 기본적으로 숨겨진 이미지를 무시합니다. 숨겨진 이미지를 로드하려면 Skip_invisible을 false로 설정하세요.


플러그인 다운로드

최신 버전의 소스 코드와 압축 코드는 이미 OSX의 Safari 5.1, Safari 6, Chrome 20, Firefox 12 브라우저, Windows의 Chrome 20, IE 8 및 IE 9 브라우저, iOS5(iPhone)에서 사용할 수 있습니다. 및 iPad의 Safari 5.1 브라우저에서 테스트됨)


jQuery 지연 로드 및 지연 로딩 관련 기사에 대한 자세한 설명은 PHP 중국어 웹사이트를 참고하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

JavaScript로 문자열 문자를 교체하십시오 JavaScript로 문자열 문자를 교체하십시오 Mar 11, 2025 am 12:07 AM

JavaScript로 문자열 문자를 교체하십시오

jQuery 날짜가 유효한지 확인하십시오 jQuery 날짜가 유효한지 확인하십시오 Mar 01, 2025 am 08:51 AM

jQuery 날짜가 유효한지 확인하십시오

jQuery는 요소 패딩/마진을 얻습니다 jQuery는 요소 패딩/마진을 얻습니다 Mar 01, 2025 am 08:53 AM

jQuery는 요소 패딩/마진을 얻습니다

상위 5 일 날짜 조작 JS 플러그인 상위 5 일 날짜 조작 JS 플러그인 Feb 28, 2025 am 12:34 AM

상위 5 일 날짜 조작 JS 플러그인

10 JQuery 플러그인을 확인할 가치가 있습니다 10 JQuery 플러그인을 확인할 가치가 있습니다 Mar 01, 2025 am 01:29 AM

10 JQuery 플러그인을 확인할 가치가 있습니다

10 JQuery Accordions 탭 10 JQuery Accordions 탭 Mar 01, 2025 am 01:34 AM

10 JQuery Accordions 탭

jQuery div에 스크롤 바를 추가합니다 jQuery div에 스크롤 바를 추가합니다 Mar 01, 2025 am 01:30 AM

jQuery div에 스크롤 바를 추가합니다

10 Ajax/JQuery Autocomplete 튜토리얼/플러그인 10 Ajax/JQuery Autocomplete 튜토리얼/플러그인 Feb 28, 2025 am 01:03 AM

10 Ajax/JQuery Autocomplete 튜토리얼/플러그인

See all articles