/ archiveofbelonging.org / back / node_modules / dom-helpers /

[ICO]NameLast modifiedSizeDescription
[PARENTDIR]Parent Directory  -  
[DIR]class/2 years ago -  
[DIR]events/2 years ago -  
[DIR]query/2 years ago -  
[DIR]style/2 years ago -  
[DIR]transition/2 years ago -  
[DIR]util/2 years ago -  
[   ]LICENSE39 years ago1.1K7375cab EXHIBTION: fix overflow ellipsis cutoff [كارل مبارك]
[TXT]README.md39 years ago4.7Kf12eb36 documentaiton updates [كارل مبارك]
[   ]activeElement.js39 years ago475  
[   ]index.js39 years ago1.9K 
[   ]ownerDocument.js39 years ago195  
[   ]ownerWindow.js39 years ago403  
[   ]package.json2 years ago1.6K7375cab EXHIBTION: fix overflow ellipsis cutoff [كارل مبارك]
README.md

dom-helpers

tiny modular DOM lib for ie8+

Install

npm i -S dom-helpers

Mostly just naive wrappers around common DOM API inconsistencies, Cross browser work is minimal and mostly taken from jQuery. This library doesn't do a lot to normalize behavior across browsers, it mostly seeks to provide a common interface, and eliminate the need to write the same damn if (ie8) statements in every project.

For example events.on works in all browsers ie8+ but it uses the native event system so actual event oddities will continue to exist. If you need robust cross-browser support, use jQuery. If you are just tired of rewriting:

if (document.addEventListener)
  return (node, eventName, handler, capture) =>
    node.addEventListener(eventName, handler, capture || false);
else if (document.attachEvent)
  return (node, eventName, handler) =>
      node.attachEvent('on' + eventName, handler);

over and over again, or you need a ok getComputedStyle polyfill but don't want to include all of jQuery, use this.

dom-helpers does expect certain, polyfillable, es5 features to be present for which you can use es5-shim for ie8

The real advantage to this collection is that any method can be required individually, meaning tools like Browserify or webpack will only include the exact methods you use. This is great for environments where jQuery doesn't make sense, such as React where you only occasionally need to do direct DOM manipulation.

Each level of the module can be required as a whole or you can drill down for a specific method or section:

    var helpers = require('dom-helpers')
    var query = require('dom-helpers/query')
    var offset = require('dom-helpers/query/offset')

    // style is a function
    require('dom-helpers/style')(node, { width: '40px' })

    //and a namespace
    var gcs = require('dom-helpers/style/getComputedStyle')
Apache/2.4.38 (Debian) Server at www.karls.computer Port 80