public/ckeditor/4.4dev/core/dom/element.js
function( otherElement ) {
			// do shallow clones, but with IDs
			var thisEl = this.clone( 0, 1 ),
				otherEl = otherElement.clone( 0, 1 );

			// Remove distractions.
			thisEl.removeAttributes( [ '_moz_dirty', 'data-cke-expando', 'data-cke-saved-href', 'data-cke-saved-name' ] );
			otherEl.removeAttributes( [ '_moz_dirty', 'data-cke-expando', 'data-cke-saved-href', 'data-cke-saved-name' ] );

			// Native comparison available.
			if ( thisEl.$.isEqualNode ) {
				// Styles order matters.
				thisEl.$.style.cssText = CKEDITOR.tools.normalizeCssText( thisEl.$.style.cssText );
				otherEl.$.style.cssText = CKEDITOR.tools.normalizeCssText( otherEl.$.style.cssText );
				return thisEl.$.isEqualNode( otherEl.$ );
			} else {
				thisEl = thisEl.getOuterHtml();
				otherEl = otherEl.getOuterHtml();

				// Fix tiny difference between link href in older IEs.
				if ( CKEDITOR.env.ie && CKEDITOR.env.version < 9 && this.is( 'a' ) ) {
					var parent = this.getParent();
					if ( parent.type == CKEDITOR.NODE_ELEMENT ) {
						var el = parent.clone();
						el.setHtml( thisEl ), thisEl = el.getHtml();
						el.setHtml( otherEl ), otherEl = el.getHtml();
					}
				}

				return thisEl == otherEl;
			}
		}
function( otherElement ) {
			// do shallow clones, but with IDs
			var thisEl = this.clone( 0, 1 ),
				otherEl = otherElement.clone( 0, 1 );

			// Remove distractions.
			thisEl.removeAttributes( [ '_moz_dirty', 'data-cke-expando', 'data-cke-saved-href', 'data-cke-saved-name' ] );
			otherEl.removeAttributes( [ '_moz_dirty', 'data-cke-expando', 'data-cke-saved-href', 'data-cke-saved-name' ] );

			// Native comparison available.
			if ( thisEl.$.isEqualNode ) {
				// Styles order matters.
				thisEl.$.style.cssText = CKEDITOR.tools.normalizeCssText( thisEl.$.style.cssText );
				otherEl.$.style.cssText = CKEDITOR.tools.normalizeCssText( otherEl.$.style.cssText );
				return thisEl.$.isEqualNode( otherEl.$ );
			} else {
				thisEl = thisEl.getOuterHtml();
				otherEl = otherEl.getOuterHtml();

				// Fix tiny difference between link href in older IEs.
				if ( CKEDITOR.env.ie && CKEDITOR.env.version < 9 && this.is( 'a' ) ) {
					var parent = this.getParent();
					if ( parent.type == CKEDITOR.NODE_ELEMENT ) {
						var el = parent.clone();
						el.setHtml( thisEl ), thisEl = el.getHtml();
						el.setHtml( otherEl ), otherEl = el.getHtml();
					}
				}

				return thisEl == otherEl;
			}
		}
function ( otherElement ) { // do shallow clones, but with IDs var thisEl = this . clone ( 0 , 1 ) , otherEl = otherElement . clone ( 0 , 1 ) ; // Remove distractions. thisEl . removeAttributes ( [ '_moz_dirty' , 'data-cke-expando' , 'data-cke-saved-href' , 'data-cke-saved-name' ] ) ; otherEl . removeAttributes ( [ '_moz_dirty' , 'data-cke-expando' , 'data-cke-saved-href' , 'data-cke-saved-name' ] ) ; // Native comparison available. if ( thisEl . $ . isEqualNode ) { // Styles order matters. thisEl . $ . style . cssText = CKEDITOR . tools . normalizeCssText ( thisEl . $ . style . cssText ) ; otherEl . $ . style . cssText = CKEDITOR . tools . normalizeCssText ( otherEl . $ . style . cssText ) ; return thisEl . $ . isEqualNode ( otherEl . $ ) ; } else { thisEl = thisEl . getOuterHtml ( ) ; otherEl = otherEl . getOuterHtml ( ) ; // Fix tiny difference between link href in older IEs. if ( CKEDITOR . env . ie && CKEDITOR . env . version < 9 && this . is ( 'a' ) ) { var parent = this . getParent ( ) ; if ( parent . type == CKEDITOR . NODE_ELEMENT ) { var el = parent . clone ( ) ; el . setHtml ( thisEl ) , thisEl = el . getHtml ( ) ; el . setHtml ( otherEl ) , otherEl = el . getHtml ( ) ; } } return thisEl == otherEl ; } }
Compare this element's inner html, tag name, attributes, etc. with other one.

See [W3C's DOM Level 3 spec - node#isEqualNode](http://www.w3.org/TR/DOM-Level-3-Core/core.html#Node3-isEqualNode)
for more details.

@param {CKEDITOR.dom.element} otherElement Element to compare.
@returns {Boolean}
Compare this element s inner html tag name attributes etc . with other one .