Upgrade to ExtJS 3.3.1 - Released 11/30/2010
[extjs.git] / docs / source / DomHelper-more.html
index 8dea4d2..b99c3d8 100644 (file)
@@ -7,32 +7,33 @@
 </head>
 <body  onload="prettyPrint();">
     <pre class="prettyprint lang-js">/*!
- * Ext JS Library 3.2.0
- * Copyright(c) 2006-2010 Ext JS, Inc.
- * licensing@extjs.com
- * http://www.extjs.com/license
+ * Ext JS Library 3.3.1
+ * Copyright(c) 2006-2010 Sencha Inc.
+ * licensing@sencha.com
+ * http://www.sencha.com/license
  */
 /**
  * @class Ext.DomHelper
  */
 Ext.apply(Ext.DomHelper,
 function(){
-       var pub,
-               afterbegin = 'afterbegin',
-       afterend = 'afterend',
-       beforebegin = 'beforebegin',
-       beforeend = 'beforeend';
+    var pub,
+        afterbegin = 'afterbegin',
+        afterend = 'afterend',
+        beforebegin = 'beforebegin',
+        beforeend = 'beforeend',
+        confRe = /tag|children|cn|html$/i;
 
-       // private
+    // private
     function doInsert(el, o, returnElement, pos, sibling, append){
         el = Ext.getDom(el);
         var newNode;
         if (pub.useDom) {
             newNode = createDom(o, null);
             if (append) {
-                   el.appendChild(newNode);
+                el.appendChild(newNode);
             } else {
-                       (sibling == 'firstChild' ? el : el.parentNode).insertBefore(newNode, el[sibling] || el);
+                (sibling == 'firstChild' ? el : el.parentNode).insertBefore(newNode, el[sibling] || el);
             }
         } else {
             newNode = Ext.DomHelper.insertHtml(pos, el, Ext.DomHelper.createHtml(o));
@@ -40,39 +41,40 @@ function(){
         return returnElement ? Ext.get(newNode, true) : newNode;
     }
 
-       // build as dom
+    // build as dom
     /** @ignore */
     function createDom(o, parentNode){
         var el,
-               doc = document,
-               useSet,
-               attr,
-               val,
-               cn;
+            doc = document,
+            useSet,
+            attr,
+            val,
+            cn;
 
         if (Ext.isArray(o)) {                       // Allow Arrays of siblings to be inserted
             el = doc.createDocumentFragment(); // in one shot using a DocumentFragment
-               Ext.each(o, function(v) {
-                createDom(v, el);
-            });
-        } else if (Ext.isString(o)) {         // Allow a string as a child spec.
+            for (var i = 0, l = o.length; i < l; i++) {
+                createDom(o[i], el);
+            }
+        } else if (typeof o == 'string') {         // Allow a string as a child spec.
             el = doc.createTextNode(o);
         } else {
             el = doc.createElement( o.tag || 'div' );
             useSet = !!el.setAttribute; // In IE some elements don't have setAttribute
-            Ext.iterate(o, function(attr, val){
-                if(!/tag|children|cn|html|style/.test(attr)){
-                       if(attr == 'cls'){
-                           el.className = val;
-                       }else{
+            for (var attr in o) {
+                if(!confRe.test(attr)){
+                    val = o[attr];
+                    if(attr == 'cls'){
+                        el.className = val;
+                    }else{
                         if(useSet){
                             el.setAttribute(attr, val);
                         }else{
                             el[attr] = val;
                         }
-                       }
+                    }
                 }
-            });
+            }
             Ext.DomHelper.applyStyles(el, o.style);
 
             if ((cn = o.children || o.cn)) {
@@ -87,76 +89,77 @@ function(){
         return el;
     }
 
-       pub = {
-               <div id="method-Ext.DomHelper-createTemplate"></div>/**
-            * Creates a new Ext.Template from the DOM object spec.
-            * @param {Object} o The DOM object spec (and children)
-            * @return {Ext.Template} The new template
-            */
-           createTemplate : function(o){
-               var html = Ext.DomHelper.createHtml(o);
-               return new Ext.Template(html);
-           },
+    pub = {
+        <div id="method-Ext.DomHelper-createTemplate"></div>/**
+         * Creates a new Ext.Template from the DOM object spec.
+         * @param {Object} o The DOM object spec (and children)
+         * @return {Ext.Template} The new template
+         */
+        createTemplate : function(o){
+            var html = Ext.DomHelper.createHtml(o);
+            return new Ext.Template(html);
+        },
 
-               <div id="prop-Ext.DomHelper-useDom"></div>/** True to force the use of DOM instead of html fragments @type Boolean */
-           useDom : false,
+        <div id="prop-Ext.DomHelper-useDom"></div>/** True to force the use of DOM instead of html fragments @type Boolean */
+        useDom : false,
 
-           <div id="method-Ext.DomHelper-insertBefore"></div>/**
-            * Creates new DOM element(s) and inserts them before el.
-            * @param {Mixed} el The context element
-            * @param {Object/String} o The DOM object spec (and children) or raw HTML blob
-            * @param {Boolean} returnElement (optional) true to return a Ext.Element
-            * @return {HTMLElement/Ext.Element} The new node
+        <div id="method-Ext.DomHelper-insertBefore"></div>/**
+         * Creates new DOM element(s) and inserts them before el.
+         * @param {Mixed} el The context element
+         * @param {Object/String} o The DOM object spec (and children) or raw HTML blob
+         * @param {Boolean} returnElement (optional) true to return a Ext.Element
+         * @return {HTMLElement/Ext.Element} The new node
          * @hide (repeat)
-            */
-           insertBefore : function(el, o, returnElement){
-               return doInsert(el, o, returnElement, beforebegin);
-           },
+         */
+        insertBefore : function(el, o, returnElement){
+            return doInsert(el, o, returnElement, beforebegin);
+        },
 
-           <div id="method-Ext.DomHelper-insertAfter"></div>/**
-            * Creates new DOM element(s) and inserts them after el.
-            * @param {Mixed} el The context element
-            * @param {Object} o The DOM object spec (and children)
-            * @param {Boolean} returnElement (optional) true to return a Ext.Element
-            * @return {HTMLElement/Ext.Element} The new node
+        <div id="method-Ext.DomHelper-insertAfter"></div>/**
+         * Creates new DOM element(s) and inserts them after el.
+         * @param {Mixed} el The context element
+         * @param {Object} o The DOM object spec (and children)
+         * @param {Boolean} returnElement (optional) true to return a Ext.Element
+         * @return {HTMLElement/Ext.Element} The new node
          * @hide (repeat)
-            */
-           insertAfter : function(el, o, returnElement){
-               return doInsert(el, o, returnElement, afterend, 'nextSibling');
-           },
+         */
+        insertAfter : function(el, o, returnElement){
+            return doInsert(el, o, returnElement, afterend, 'nextSibling');
+        },
 
-           <div id="method-Ext.DomHelper-insertFirst"></div>/**
-            * Creates new DOM element(s) and inserts them as the first child of el.
-            * @param {Mixed} el The context element
-            * @param {Object/String} o The DOM object spec (and children) or raw HTML blob
-            * @param {Boolean} returnElement (optional) true to return a Ext.Element
-            * @return {HTMLElement/Ext.Element} The new node
+        <div id="method-Ext.DomHelper-insertFirst"></div>/**
+         * Creates new DOM element(s) and inserts them as the first child of el.
+         * @param {Mixed} el The context element
+         * @param {Object/String} o The DOM object spec (and children) or raw HTML blob
+         * @param {Boolean} returnElement (optional) true to return a Ext.Element
+         * @return {HTMLElement/Ext.Element} The new node
          * @hide (repeat)
-            */
-           insertFirst : function(el, o, returnElement){
-               return doInsert(el, o, returnElement, afterbegin, 'firstChild');
-           },
+         */
+        insertFirst : function(el, o, returnElement){
+            return doInsert(el, o, returnElement, afterbegin, 'firstChild');
+        },
 
-           <div id="method-Ext.DomHelper-append"></div>/**
-            * Creates new DOM element(s) and appends them to el.
-            * @param {Mixed} el The context element
-            * @param {Object/String} o The DOM object spec (and children) or raw HTML blob
-            * @param {Boolean} returnElement (optional) true to return a Ext.Element
-            * @return {HTMLElement/Ext.Element} The new node
+        <div id="method-Ext.DomHelper-append"></div>/**
+         * Creates new DOM element(s) and appends them to el.
+         * @param {Mixed} el The context element
+         * @param {Object/String} o The DOM object spec (and children) or raw HTML blob
+         * @param {Boolean} returnElement (optional) true to return a Ext.Element
+         * @return {HTMLElement/Ext.Element} The new node
          * @hide (repeat)
-            */
-           append: function(el, o, returnElement){
+         */
+        append: function(el, o, returnElement){
             return doInsert(el, o, returnElement, beforeend, '', true);
         },
 
-           <div id="method-Ext.DomHelper-createDom"></div>/**
-            * Creates new DOM element(s) without inserting them to the document.
-            * @param {Object/String} o The DOM object spec (and children) or raw HTML blob
-            * @return {HTMLElement} The new uninserted node
-            */
+        <div id="method-Ext.DomHelper-createDom"></div>/**
+         * Creates new DOM element(s) without inserting them to the document.
+         * @param {Object/String} o The DOM object spec (and children) or raw HTML blob
+         * @return {HTMLElement} The new uninserted node
+         */
         createDom: createDom
-       };
-       return pub;
-}());</pre>    
+    };
+    return pub;
+}());
+</pre>    
 </body>
 </html>
\ No newline at end of file