Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
  build
  impl
  test
  package.json
  .npmignore
  README.md
  index.js
  Makefile
  watch_tests
Size: Mime:
  README.md

domutil

Simple standalone DOM utility functions, mostly ripped from jQuery.

Installation

Browserify recommended.

$ npm install domutil

In the codes:

var du = require('domutil');

API

Classes

du.hasClass(el, className)

du.addClass(el, className)

du.removeClass(el, className)

du.toggleClass(el, className)

du.removeMatchingClasses(el, regexp)

Remove all classes on element that match regexp.

Events

du.bind(el, evtType, cb, [useCapture])

du.bind_c(el, evtType, cb, [useCapture])

As above, but returns a cancellation function.

du.delegate(el, evtType, selector, cb, [useCapture])

du.delegate_c(el, evtType, selector, cb, [useCapture])

As above, but returns a cancellation function.

du.unbind(el, evtType, cb, [useCapture])

du.stop(evt)

Shortcut for:

evt.preventDefault();
evt.stopPropagation();

Layout

du.setRect(el, x, y, width, height)

Shortcut for:

du.setPosition(el, x, y);
du.setSize(el, width, height);

du.setPosition(el, x, y)

du.setSize(el, width, height)

du.isHidden(el)

Fast check for el.offsetWidth === 0 || el.offsetHeight === 0. This is the same test used by jQuery's :visible pseudo-selector.

This will detect elements that have been hidden directly with display: none or visibility: hidden. It also seems to work with elements whose ancestors have been hidden with display: none.

False positives will be reported for elements which have zero height or width.

du.isVisible(el)

Inverse of du.isHidden(el).

Matches Selector

du.matchesSelector(selector, el)

Node

du.append(el, content)

Append content to el. content may be a text string, HTML string, DOM node, DocumentFragment, or an array of the aforementioned.

du.clear(el)

Remove all child nodes of el.

du.isElement(thing)

du.replace(oldEl, newEl)

Replace oldEl with newEl.

du.content(el, content)

Set all children of el. Equivalent to du.clear(el); du.append(el, content).

Style

du.style(el, attribute, value)

Equivalent to el.style[attribute] = value. If value is a number, px will be appended.

du.style(el, attributes)

Assign all key/value pairs of attributes to el.style.

du.removeStyle(el, attribute)

Remove style attribute from el.

Text

du.getText(el)

du.text(el, text)

Viewport

du.viewportSize()