Comparing version 0.1.19 to 0.1.20
{ | ||
"name": "dominic", | ||
"version": "0.1.19", | ||
"version": "0.1.20", | ||
"description": "Helper to quickly build up DOM in simple javascript object format.", | ||
@@ -5,0 +5,0 @@ "scripts": [ |
@@ -26,3 +26,3 @@ (function (root, factory) { | ||
var isDom = function (obj) { return obj instanceof Node } | ||
var isObj = function (obj) { var objType = typeof obj; return objType === 'object' || objType === 'function' } | ||
var isObj = function (obj) { var objType = typeof obj; return obj && objType === 'object' || objType === 'function' } | ||
var isStrOrNum = function (val) { var valType = typeof val; return valType === 'string' || valType === 'number' } | ||
@@ -310,3 +310,3 @@ var isFn = function (val) { return typeof val === 'function' } | ||
root.appendChild(obj) | ||
setRefs(root, obj, realRoot) | ||
setRefs(root, obj, realRoot) | ||
} | ||
@@ -327,10 +327,3 @@ else { | ||
else { | ||
var tag = obj.tag | ||
if (tag) { | ||
delete obj.tag | ||
if (injectOpts) assign3(obj, injectOpts) | ||
var el = CreateElement(tag, obj, realRoot) | ||
setChildren(root, el, realRoot, injectOpts) | ||
} | ||
else if (obj.hasOwnProperty('for')) { | ||
if (obj.hasOwnProperty('for')) { | ||
if (!isObj(obj.for)) return; | ||
@@ -351,4 +344,11 @@ var cFromTpl = tpl2dom(root, obj, realRoot) | ||
} | ||
} else | ||
return null | ||
} else { | ||
var tag = obj.tag || 'div' | ||
if (tag && typeof tag === 'string') { | ||
delete obj.tag | ||
if (injectOpts) assign3(obj, injectOpts) | ||
var el = CreateElement(tag, obj, realRoot) | ||
setChildren(root, el, realRoot, injectOpts) | ||
} | ||
} | ||
} | ||
@@ -413,9 +413,5 @@ } | ||
var setDelayProps = function (el, props) { | ||
var propNames = Object.keys(props), length = propNames.length | ||
for (var i = 0; i < length; i++) { | ||
var prop = propNames[i] | ||
var val = props[prop] | ||
el[prop] = (el[prop] + val).trim() | ||
} | ||
var setDelayClasses = function (el, classes) { | ||
for (var i = 0, length = classes.length; i < length; i++) | ||
el.className = (el.className + classes[i]).trim() | ||
} | ||
@@ -446,3 +442,3 @@ var setDelaySetups = function (el, setups, root, injectOpts) { | ||
var fnConfig = ['style', 'children', 'items', 'attrs', 'events'] | ||
var mouseEvts = ['click', 'mousedown', 'mouseup', 'mouseover', 'mouseout', 'mouseenter', 'mouseleave', 'mousemove'] | ||
@@ -456,5 +452,5 @@ var dragEvts = ['dragstart', 'dragend', 'drag', 'dragover', 'dragenter', 'dragout', 'drop'] | ||
var evtConfig = mouseEvts.concat(dragEvts,focusEvts,keyEvts,formEvts,touchEvts,scrEvts) | ||
var delayCbProps = ['created', 'appended'] | ||
var delayProps = ['className', 'id'] | ||
var delayProps = ['className', 'cls'] | ||
var delayTextProps = ['text', 'textContent'] | ||
@@ -482,3 +478,3 @@ var delayAppendTarget = ['parent'] | ||
var delayCb | ||
var delayProps | ||
var delayClasses | ||
var delayRoot | ||
@@ -511,3 +507,3 @@ var injectOpts | ||
} else if (keyIdx < propRange) { | ||
(delayProps = delayProps || {})[key] = val | ||
(delayClasses = delayClasses || []).push(val) | ||
} else if (keyIdx < textRange) { | ||
@@ -520,6 +516,6 @@ el.appendChild(doc.createTextNode(val)) | ||
if (delayProps) | ||
setDelayProps(el, delayProps) | ||
if (delaySetups) | ||
setDelaySetups(el, delaySetups, root, injectOpts) | ||
if (delayClasses) | ||
setDelayClasses(el, delayClasses) | ||
if (delayEvts) | ||
@@ -553,4 +549,4 @@ setDelayEvts(el, delayEvts, root) | ||
} | ||
return Dominic | ||
}); |
{ | ||
"name": "dominic", | ||
"version": "0.1.19", | ||
"version": "0.1.20", | ||
"description": "Helper to quickly build up DOM in simple javascript object format.", | ||
@@ -5,0 +5,0 @@ "main": "dominic.js", |
31506
530