tinymce.full.js
function createNewBlock(name) {
          var node = container, block, clonedNode, caretNode, textInlineElements = schema.getTextInlineElements();

          if (name || parentBlockName == "TABLE") {
            block = dom.create(name || newBlockName);
            setForcedBlockAttrs(block);
          } else {
            block = parentBlock.cloneNode(false);
          }

          caretNode = block;

          // Clone any parent styles
          if (settings.keep_styles !== false) {
            do {
              if (textInlineElements[node.nodeName]) {
                // Never clone a caret containers
                if (node.id == '_mce_caret') {
                  continue;
                }

                clonedNode = node.cloneNode(false);
                dom.setAttrib(clonedNode, 'id', ''); // Remove ID since it needs to be document unique

                if (block.hasChildNodes()) {
                  clonedNode.appendChild(block.firstChild);
                  block.appendChild(clonedNode);
                } else {
                  caretNode = clonedNode;
                  block.appendChild(clonedNode);
                }
              }
            } while ((node = node.parentNode) && node != editableRoot);
          }

          // BR is needed in empty blocks on non IE browsers
          if (!isIE) {
            caretNode.innerHTML = '<br data-mce-bogus="1">';
          }

          return block;
        }
function createNewBlock(name) {
          var node = container, block, clonedNode, caretNode, textInlineElements = schema.getTextInlineElements();

          if (name || parentBlockName == "TABLE") {
            block = dom.create(name || newBlockName);
            setForcedBlockAttrs(block);
          } else {
            block = parentBlock.cloneNode(false);
          }

          caretNode = block;

          // Clone any parent styles
          if (settings.keep_styles !== false) {
            do {
              if (textInlineElements[node.nodeName]) {
                // Never clone a caret containers
                if (node.id == '_mce_caret') {
                  continue;
                }

                clonedNode = node.cloneNode(false);
                dom.setAttrib(clonedNode, 'id', ''); // Remove ID since it needs to be document unique

                if (block.hasChildNodes()) {
                  clonedNode.appendChild(block.firstChild);
                  block.appendChild(clonedNode);
                } else {
                  caretNode = clonedNode;
                  block.appendChild(clonedNode);
                }
              }
            } while ((node = node.parentNode) && node != editableRoot);
          }

          // BR is needed in empty blocks on non IE browsers
          if (!isIE) {
            caretNode.innerHTML = '<br data-mce-bogus="1">';
          }

          return block;
        }
function createNewBlock ( name ) { var node = container , block , clonedNode , caretNode , textInlineElements = schema . getTextInlineElements ( ) ; if ( name || parentBlockName == "TABLE" ) { block = dom . create ( name || newBlockName ) ; setForcedBlockAttrs ( block ) ; } else { block = parentBlock . cloneNode ( false ) ; } caretNode = block ; // Clone any parent styles if ( settings . keep_styles !== false ) { do { if ( textInlineElements [ node . nodeName ] ) { // Never clone a caret containers if ( node . id == '_mce_caret' ) { continue ; } clonedNode = node . cloneNode ( false ) ; dom . setAttrib ( clonedNode , 'id' , '' ) ; // Remove ID since it needs to be document unique if ( block . hasChildNodes ( ) ) { clonedNode . appendChild ( block . firstChild ) ; block . appendChild ( clonedNode ) ; } else { caretNode = clonedNode ; block . appendChild ( clonedNode ) ; } } } while ( ( node = node . parentNode ) && node != editableRoot ) ; } // BR is needed in empty blocks on non IE browsers if ( ! isIE ) { caretNode . innerHTML = '<br data-mce-bogus="1">' ; } return block ; }
Creates a new block element by cloning the current one or creating a new one if the name is specified This function will also copy any text formatting from the parent block and add it to the new one
Creates a new block element by cloning the current one or creating a new one if the name is specified This function will also copy any text formatting from the parent block and add it to the new one