jScroll

jQuery Plugin for Infinite Scrolling / Auto-Paging

이 스크립트는 직접 설치해서 쓰는 게 아닙니다. 다른 스크립트가 메타 명령 // @require https://update.greasyfork.org/scripts/19670/125710/jScroll.js(으)로 포함하여 쓰는 라이브러리입니다.

질문, 리뷰하거나, 이 스크립트를 신고하세요.
개발자
neckroad
버전
0.0.1.20160514101223
생성
2016-05-14
갱신
2016-05-14
라이선스
없음

About jScroll

jScroll is a jQuery plugin for infinite scrolling, written by Philip Klauzinski. Infinite scrolling; also known as lazy loading, endless scrolling, autopager, endless pages, etc.; is the ability to load content via AJAX within the current page or content area as you scroll down. The new content can be loaded automatically each time you scroll to the end of the existing content, or it can be triggered to load by clicking a navigation link at the end of the existing content.

An example of infinite scrolling is your Facebook "News Feed" page. You may notice that when you scroll to the bottom of this page, new content will often load automatically, or you will be given a link to "Older Posts" which will load more content when clicked.

Download Latest Version

The latest version of jScroll is available for download from GitHub.

Usage

The jscroll method is called on the selector for which you want your scrollable content contained within. For example:

$('.infinite-scroll').jscroll();

The jscroll method takes an optional object literal as a parameter for overriding the default options. An example of how this can be done is shown below.

$('.infinite-scroll').jscroll({
    loadingHtml: '<img src="loading.gif" alt="Loading" /> Loading...',
    padding: 20,
    nextSelector: 'a.jscroll-next:last',
    contentSelector: 'li'
});

Options

Option KeyDefault ValueDescription
debugfalseWhen set to true, outputs useful information to the console display if the console object exists.
autoTriggertrueWhen set to true, triggers the loading of the next set of content automatically when the user scrolls to the bottom of the containing element. When set to false, the required next link will trigger the loading of the next set of content when clicked.
autoTriggerUntilfalseSet to an integer great than 0 to turn off autoTrigger of paging after the specified number of pages. Requires autoTrigger to be true.
loadingHtml'<small>Loading...</small>'The HTML to show at the bottom of the content while loading the next set.
padding0The distance from the bottom of the scrollable content at which to trigger the loading of the next set of content. This only applies when autoTrigger is set to true.
nextSelector'a:last'The selector to use for finding the link which contains the href pointing to the next set of content. If this selector is not found, or if it does not contain a href attribute, jScroll will self-destroy and unbind from the element upon which it was called.
contentSelector''A convenience selector for loading only part of the content in the response for the next set of content. This selector will be ignored if left blank and will apply the entire response to the DOM.
callbackfalsePass a function to this option and it will be called at the end of each page load. Alternatively, you can pass a function as the only argument to the jScroll instantiation instead of an options object, and it will be returned as a callback.

For more information on the contentSelector option and how it loads a response fragment, see the jQuery documentation for the .load() method.

Example 1

For a real-world example of jScroll, visit Hang3 | Social Classifieds.

The following is an example of jScroll out of the box, using all default options.

Note: An additional page load time has been intentionally added for each scroll request so that you may more easily observe what is happening in the examples.

Page 1 of jScroll Example - jQuery Infinite Scrolling Plugin

This is the content of page 1 in the jScroll example. Scroll to the bottom of this box to load the next set of content.

This is example text for the jScroll demonstration. jScroll is a jQuery plugin for infinite scrolling, endless scrolling, lazy loading, auto-paging, or whatever you may call it.

With jScroll, you can initialize the scroller on an element with a fixed height and overflow setting of "auto" or "scroll," or it can be set on a standard block-level element within the document and the scrolling will be initialized based on the brower window's scroll position.

jScroll is open-source and can be downloaded from my GitHub repository at github.com/pklauzinski/jscroll.

The HTML (abbreviated)

<div class="scroll">
    <h3>Page 1</h3>
    <p>Content here...</p>
    <a href="example-page2.html">next page</a>
</div>

The JavaScript

$('.scroll').jscroll();

It's that easy!

Example 2 - Using autoTrigger = false

// Don't automatically load content on scroll, require user to click the link instead
$('.scroll').jscroll({
    autoTrigger: false
});

Page 1 of jScroll Example - jQuery Infinite Scrolling Plugin

This is the content of page 1 in the jScroll example. Scroll to the bottom of this box to load the next set of content.

This is example text for the jScroll demonstration. jScroll is a jQuery plugin for infinite scrolling, endless scrolling, lazy loading, auto-paging, or whatever you may call it.

With jScroll, you can initialize the scroller on an element with a fixed height and overflow setting of "auto" or "scroll," or it can be set on a standard block-level element within the document and the scrolling will be initialized based on the brower window's scroll position.

jScroll is open-source and can be downloaded from my GitHub repository at github.com/pklauzinski/jscroll.

Example 3 - Using autoTriggerUntil

// autoTrigger on scroll until after the third request is loaded
$('.scroll').jscroll({
    autoTriggerUntil: 3
});

Page 1 of jScroll Example - jQuery Infinite Scrolling Plugin

This is the content of page 1 in the jScroll example. Scroll to the bottom of this box to load the next set of content.

This is example text for the jScroll demonstration. jScroll is a jQuery plugin for infinite scrolling, endless scrolling, lazy loading, auto-paging, or whatever you may call it.

With jScroll, you can initialize the scroller on an element with a fixed height and overflow setting of "auto" or "scroll," or it can be set on a standard block-level element within the document and the scrolling will be initialized based on the brower window's scroll position.

jScroll is open-source and can be downloaded from my GitHub repository at github.com/pklauzinski/jscroll.

License

jScroll is © 2016 Philip Klauzinski and dual licensed under the MIT and GPL Version 2 licenses.