Ticket #3403: 3403_2.patch

File 3403_2.patch, 3.5 KB (added by Martin Kou, 10 years ago)
  • _source/plugins/forms/dialogs/textfield.js

     
    1111                maxLength : 1
    1212        };
    1313
    14         var ieDefaults =
    15         {
    16                 size : 20,
    17                 maxLength : 0x7fffffff
    18         };
    19 
    2014        var acceptedTypes =
    2115        {
    2216                text : 1,
     
    5852                {
    5953                        var autoSetup = function( element )
    6054                        {
    61                                 var value = element.getAttribute( this.id );
    62                                 if ( CKEDITOR.env.ie && ( this.id in ieDefaults ) && ieDefaults[ this.id ] == value )
    63                                         this.setValue( '' );
    64                                 else
    65                                         this.setValue( element.getAttribute( this.id ) || '' );
     55                                var value = element.hasAttribute( this.id ) && element.getAttribute( this.id );
     56                                this.setValue( value || '' );
    6657                        };
    6758
    6859                        var autoCommit = function( data )
  • _source/plugins/forms/dialogs/textarea.js

     
    7070                                                validate : CKEDITOR.dialog.validate.integer( editor.lang.common.validateNumberFailed ),
    7171                                                setup : function( element )
    7272                                                {
    73                                                         var ieDefault = 20;
    74                                                         var value = element.getAttribute( 'cols' );
    75                                                         this.setValue( ( CKEDITOR.env.ie && ( value == ieDefault ) ? '' : value ) || '' );
     73                                                        var value = element.hasAttribute( 'cols' ) && element.getAttribute( 'cols' );
     74                                                        this.setValue( value || '' );
    7675                                                },
    7776                                                commit : function( element )
    7877                                                {
     
    9291                                                validate : CKEDITOR.dialog.validate.integer( editor.lang.common.validateNumberFailed ),
    9392                                                setup : function( element )
    9493                                                {
    95                                                         var ieDefault = 2;
    96                                                         var value = element.getAttribute( 'rows' );
    97                                                         this.setValue( ( CKEDITOR.env.ie && ( value == ieDefault ) ? '' : value ) || '' );
     94                                                        var value = element.hasAttribute( 'rows' ) && element.getAttribute( 'rows' );
     95                                                        this.setValue( value || '' );
    9896                                                },
    9997                                                commit : function( element )
    10098                                                {
  • _source/core/dom/element.js

     
    804804                                },
    805805
    806806                /**
     807                 * Indicates whether a specified attribute is defined for this element.
     808                 * @returns {Boolean} True if the specified attribute is defined.
     809                 * @param (String) name The attribute name.
     810                 * @example
     811                 */
     812                hasAttribute :
     813                        CKEDITOR.env.ie ?
     814                                function( name )
     815                                {
     816                                        var $attr = this.$.attributes.getNamedItem( name );
     817
     818                                        if ( this.getName() == 'input' )
     819                                        {
     820                                                switch ( name )
     821                                                {
     822                                                        case 'class' :
     823                                                                return this.$.className.length > 0;
     824                                                        case 'checked' :
     825                                                                return !!this.$.checked;
     826                                                        case 'value' :
     827                                                                var type = this.getAttribute( 'type' );
     828                                                                if ( type == 'checkbox' || type == 'radio' )
     829                                                                        return this.$.value != 'on';
     830                                                                break;
     831                                                        default:
     832                                                }
     833                                        }
     834
     835                                        return !!( $attr && $attr.specified );
     836                                }
     837                        :
     838                                function( name )
     839                                {
     840                                        var $attr = this.$.attributes.getNamedItem( name );
     841                                        return !!( $attr && $attr.specified );
     842                                },
     843
     844                /**
    807845                 * Hides this element (display:none).
    808846                 * @example
    809847                 * var element = CKEDITOR.dom.element.getById( 'myElement' );
© 2003 – 2019 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy