0.0.9 • Published 6 years ago

element-height-observer v0.0.9

Weekly downloads
66
License
MIT
Repository
github
Last release
6 years ago

Element height observer

This library allows you to add an observer for page or element height. Each time the page changes height, a callback will be called.

No dependencies, total library minified is less than 0.9 KB

Install

npm install element-height-observer --save

Use

Load the script:

<html>
    <head>
        <script src="node_modules/element-height-observer/dist/index.js"></script>
    </head>
</html>

Or import it:

var heightObserver = require('element-height-observer');
var registerHeightObserver = heightObserver.registerHeightObserver;
var unregisterHeightObserver = heightObserver.unregisterHeightObserver;

Or import it (ES6 modules notation):

import { registerHeightObserver, unregisterHeightObserver } from 'element-height-observer';

When the page has loaded, you can register the observer like this:

window.addEventListener('load', function () {
    var someElement = document.querySelector('#someElementId');
    registerHeightObserver(someElement, function () {
        // Your code that you want to execute when the element changes height
    })
});

You can only add one listener per element, otherwise the unregister mechanism won't work correctly.

var someElement = document.querySelector('#someElementId');
unregisterHeightObserver(someElement);

API

There are 2 functions available:

  • registerHeightObserver(elementToWatch, options?, callback)
  • unregisterHeightObserver(elementToStopWatching)

The options are optional and can currently only specify which dimension of the element it should watch for:

{
    direction: 'horizontal' | 'vertical' | 'both'
}

The default is 'vertical'

The callback doesn't get passed any parameters:

callback: () => void

Inspiration

This library is inspired by a stackoverflow post by Jake

0.0.9

6 years ago

0.0.8

6 years ago

0.0.7

6 years ago

0.0.6

6 years ago

0.0.5

6 years ago

0.0.4

6 years ago

0.0.3

6 years ago

0.0.2

6 years ago

0.0.1

6 years ago