Ticket #3671: 3671.patch
File 3671.patch, 1.6 KB (added by , 15 years ago) |
---|
-
_source/core/htmlparser/fragment.js
99 99 { 100 100 target = target || currentNode || fragment; 101 101 102 102 103 // If the target is the fragment and this element can't go inside 103 104 // body (if fixForBody). 104 if ( fixForBody && !target.type && !CKEDITOR.dtd.$body[ element.name ])105 if ( fixForBody && !target.type ) 105 106 { 106 var savedCurrent = currentNode; 107 var elementName, realElement; 108 if ( element.attributes 109 && ( realElement = element.attributes._cke_realelement ) 110 && ( realElement = new CKEDITOR.htmlParser.fragment.fromHtml( decodeURIComponent( realElement ) ) ) 111 && ( realElement = realElement.children[ 0 ] ) ) 112 elementName = realElement.name; 113 else 114 elementName = element.name; 115 if ( !( elementName in CKEDITOR.dtd.$body ) ) 116 { 117 var savedCurrent = currentNode; 107 118 108 // Create a <p> in the fragment.109 currentNode = target;110 parser.onTagOpen( 'p', {} );119 // Create a <p> in the fragment. 120 currentNode = target; 121 parser.onTagOpen( 'p', {} ); 111 122 112 // The new target now is the <p>.113 target = currentNode;123 // The new target now is the <p>. 124 target = currentNode; 114 125 115 if ( enforceCurrent ) 116 currentNode = savedCurrent; 117 } 126 if ( enforceCurrent ) 127 currentNode = savedCurrent; 128 } 129 } 118 130 119 131 // Rtrim empty spaces on block end boundary. (#3585) 120 132 if ( element._.isBlockLike )