UNPKG

wigjs

Version:

Minimalistic, scalable, extensible, dependency-less Front-end factory for HTML5 applications

51 lines (40 loc) 1.35 kB
var DOM = module.DOM = Class.extend({ initNode: function (element, classSet, attributes, dataSet) { var classes = classSet, cl; extend(element, attributes); extend(element.dataset, dataSet); if (Array.isArray(classSet)) { classes = classSet.join(' '); } else if (classSet && typeof classSet === 'object') { classes = []; for (cl in classSet) { if (classSet.hasOwnProperty(cl) && classSet[cl]) { classes.push(cl); } } classes = classes.join(' '); } if (classes) { element.className = classes; } return element; }, findClosestViewNode: function (element, attribute) { var attributeValue; do { attributeValue = element.getAttribute(attribute); if (attributeValue != null) { return attributeValue; } element = element.parentNode; } while (element !== document); }, attachNodeToParent: function (childNode, parentNode, index) { if (typeof index === 'number') { parentNode.insertBefore(childNode, parentNode.children[index]); } else { parentNode.appendChild(childNode); } } });