domutil
v1.0.7
Published
DOM utility functions
Downloads
36
Readme
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
.