@10up/reading-position

A component that reports reading position/progress on a page while scrolling.

Usage no npm install needed!

<script type="module">
  import 10upReadingPosition from 'https://cdn.skypack.dev/@10up/reading-position';
</script>

README

10up Reading Position component

Support Level License: MIT Build Status

View official documentation for this package

Installation

npm install @10up/reading-position --save

Usage

CSS Imports

@import url("@10up/reading-position");

The styles can be imported into your existing codebase by using PostCSS imports, or by including the standalone CSS file in your project.

JavaScript

Create a new instance by supplying the selector to use for the reading-position and an object containing any necessary callback functions.

import ReadingPosition from '@10up/reading-position';

new ReadingPosition( '.reading-position', {
    onCreate: function() {
        console.log( 'onCreate callback' );
    },
    scrollStart: function( percentage ) {
        console.log( 'scrollStart callback', percentage );
    },
    scrollEnd: function( percentage ) {
        console.log( 'scrollEnd callback', percentage );
    },
    scrolling: function( percentage ) {
        console.log( 'scrolling callback', percentage );
    }
} );

Demo

Example implementations at: https://10up.github.io/component-reading-position/demo/index.html

Support Level

Active: 10up is actively working on this, and we expect to continue work for the foreseeable future including keeping tested up to the most recent version of WordPress. Bug reports, feature requests, questions, and pull requests are welcome.

Like what you see?

Work with 10up