muty

0.1.4 • Public • Published

muty

Build Status

The W3C DOM MutationObserver API is verbose and unintuitive. This wrapper simply aims to make DOM observation terse and obvious.

What?

Exposes:

// A single function for mutation observation
muty( options, element, callback ) // => MutationObserver
 
// An options object with all boolean flags set to true for broad capture
muty.options

Allowing:

// Blanket logging of all DOM mutations
muty( muty.options, document, function( records ){ console.log( records ) } )
 
// In application code, maybe something like this
var editor = document.querySelector( '[contenteditable]' )
 
muty(
  { characterData : true, subtree : true } ,
  editor,
  function( mutations, observer ){
    editor.classList.add( 'changed' )
 
    observer.disconnect()
  }
)

What not?

  • A MutationRecord processor, or any kind of higher-level abstraction. Use Mutation Summary instead.
  • A MutationObserver polyfill for non-supporting browsers. Use Mutation Watcher instead.
  • A perfect API:
    • Curry it if you want intermediary partially applied observers.
    • Use flyd (for Fantasy Land streams) or Bluebird (for Promises) if you have opinionated async data flow requirements.

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 0.1.4
    4
    • latest

Version History

Package Sidebar

Install

npm i muty

Weekly Downloads

4

Version

0.1.4

License

MIT

Last publish

Collaborators

  • barneycarroll