Changeset 371


Ignore:
Timestamp:
06/13/2007 02:23:22 PM (8 years ago)
Author:
fredck
Message:

Fixed #555 : IE7 has problems with <a href="http://user@domain.com"> elements.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • FCKeditor/trunk/editor/_source/internals/fck_ie.js

    r341 r371  
    224224                return false ;
    225225        }
    226        
     226
    227227        var sHTML = FCK._CheckIsPastingEnabled( true ) ;
    228228
     
    269269                return ;
    270270        }
    271        
     271
    272272        // Get the data available in the clipboard in text format.
    273273        var sText = clipboardData.getData("Text") ;
     
    289289        // It adds a little bit of overhead to the check, but so far that's the
    290290        // only way, mainly because of IE7.
    291        
     291
    292292        FCK._PasteIsEnabled = false ;
    293        
     293
    294294        document.body.attachEvent( 'onpaste', FCK_CheckPasting_Listener ) ;
    295        
     295
    296296        // The execCommand in GetClipboardHTML will fire the "onpaste", only if the
    297297        // security settings are enabled.
     
    299299
    300300        document.body.detachEvent( 'onpaste', FCK_CheckPasting_Listener ) ;
    301        
     301
    302302        if ( FCK._PasteIsEnabled )
    303303        {
     
    372372                        oControl.parentNode.removeChild( oControl ) ;
    373373                        oLink.appendChild( oControl ) ;
    374                        
     374
    375375                        return [ oLink ] ;
    376376                }
     
    389389                        var oLink = oLinks[i] ;
    390390
    391                         if ( oLink.href == sTempUrl )
     391                        // Check it this a newly created link.
     392                        // getAttribute must be used. oLink.url may cause problems with IE7 (#555).
     393                        if ( oLink.getAttribute( 'href', 2 ) == sTempUrl )
    392394                        {
    393395                                var sInnerHtml = oLink.innerHTML ;      // Save the innerHTML (IE changes it if it is like an URL).
     
    395397                                oLink.innerHTML = sInnerHtml ;          // Restore the innerHTML.
    396398
    397                                 // If the last child is a <br> move it outside the link or it will be too easy to select this link again #338
    398                                 if (oLink.lastChild.nodeName == 'BR' )
     399                                // If the last child is a <br> move it outside the link or it
     400                                // will be too easy to select this link again #388.
     401                                var oLastChild = oLink.lastChild ;
     402                                if ( oLastChild && oLastChild.nodeName == 'BR' )
    399403                                {
    400                                         // We move the br as a sibling after the link:
    401                                         var oBR = oLink.lastChild ;
    402                                         oLink.removeChild( oBR ) ;
    403                                         // There's no insertAfter, so we insert before the next sibling
    404                                         oLink.parentNode.insertBefore( oBR, oLink.nextSibling  );
     404                                        // Move the BR after the link.
     405                                        FCKDomTools.InsertAfterNode( oLink, oLink.removeChild( oLastChild ) ) ;
    405406                                }
    406407
Note: See TracChangeset for help on using the changeset viewer.
© 2003 – 2012 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy