Bug Tracker

Ticket #2543: vars.diff

File vars.diff, 10.2 KB (added by flesler, 14 years ago)

patch.txt is wrong, check any of these

  • src/core.js

     
    729729
    730730        // args is for internal usage only
    731731        each: function( object, callback, args ) {
     732                var i = 0, name, length = object.length;
    732733                if ( args ) {
    733                         if ( object.length == undefined ) {
    734                                 for ( var name in object )
     734                        if ( length == undefined ) {
     735                                for ( name in object )
    735736                                        if ( callback.apply( object[ name ], args ) === false )
    736737                                                break;
    737738                        } else
    738                                 for ( var i = 0, length = object.length; i < length; i++ )
     739                                for ( ; i < length; i++ )
    739740                                        if ( callback.apply( object[ i ], args ) === false )
    740741                                                break;
    741742
    742743                // A special, fast, case for the most common use of each
    743744                } else {
    744                         if ( object.length == undefined ) {
    745                                 for ( var name in object )
     745                        if ( length == undefined ) {
     746                                for ( name in object )
    746747                                        if ( callback.call( object[ name ], name, object[ name ] ) === false )
    747748                                                break;
    748749                        } else
    749                                 for ( var i = 0, length = object.length, value = object[0];
     750                                for ( var value = object[0];
    750751                                        i < length && callback.call( value, i, value ) !== false; value = object[++i] ){}
    751752                }
    752753
     
    791792
    792793        // A method for quickly swapping in/out CSS properties to get correct calculations
    793794        swap: function( elem, options, callback ) {
    794                 var old = {};
     795                var old = {}, name;
    795796                // Remember the old values, and insert the new ones
    796                 for ( var name in options ) {
     797                for ( name in options ) {
    797798                        old[ name ] = elem.style[ name ];
    798799                        elem.style[ name ] = options[ name ];
    799800                }
     
    801802                callback.call( elem );
    802803
    803804                // Revert the old values
    804                 for ( var name in options )
     805                for ( name in options )
    805806                        elem.style[ name ] = old[ name ];
    806807        },
    807808
     
    831832        },
    832833
    833834        curCSS: function( elem, name, force ) {
    834                 var ret;
     835                var ret, estyle = elem.style;
    835836
    836837                // A helper method for determining if an element's values are broken
    837838                function color( elem ) {
     
    844845
    845846                // We need to handle opacity special in IE
    846847                if ( name == "opacity" && jQuery.browser.msie ) {
    847                         ret = jQuery.attr( elem.style, "opacity" );
     848                        ret = jQuery.attr( estyle, "opacity" );
    848849
    849850                        return ret == "" ?
    850851                                "1" :
     
    852853                }
    853854                // Opera sometimes will give the wrong display answer, this fixes it, see #2037
    854855                if ( jQuery.browser.opera && name == "display" ) {
    855                         var save = elem.style.outline;
    856                         elem.style.outline = "0 solid black";
    857                         elem.style.outline = save;
     856                        var save = estyle.outline;
     857                        estyle.outline = "0 solid black";
     858                        estyle.outline = save;
    858859                }
    859860               
    860861                // Make sure we're using the right name for getting the float value
    861862                if ( name.match( /float/i ) )
    862863                        name = styleFloat;
    863864
    864                 if ( !force && elem.style && elem.style[ name ] )
    865                         ret = elem.style[ name ];
     865                if ( !force && estyle && estyle[ name ] )
     866                        ret = style[ name ];
    866867
    867868                else if ( document.defaultView && document.defaultView.getComputedStyle ) {
    868869
     
    880881                        // If the element isn't reporting its values properly in Safari
    881882                        // then some display: none elements are involved
    882883                        else {
    883                                 var swap = [], stack = [];
     884                                var swap = [], stack = [], i = 0;
    884885
    885886                                // Locate all of the parent display: none elements
    886887                                for ( var a = elem; a && color(a); a = a.parentNode )
     
    888889
    889890                                // Go through and make them visible, but in reverse
    890891                                // (It would be better if we knew the exact display type that they had)
    891                                 for ( var i = 0; i < stack.length; i++ )
     892                                for ( ; i < stack.length; i++ )
    892893                                        if ( color( stack[ i ] ) ) {
    893894                                                swap[ i ] = stack[ i ].style.display;
    894895                                                stack[ i ].style.display = "block";
     
    901902                                        ( getComputedStyle && getComputedStyle.getPropertyValue( name ) ) || "";
    902903
    903904                                // Finally, revert the display styles back
    904                                 for ( var i = 0; i < swap.length; i++ )
     905                                for ( ; i < swap.length; i++ )
    905906                                        if ( swap[ i ] != null )
    906907                                                stack[ i ].style.display = swap[ i ];
    907908                        }
     
    924925                        // but a number that has a weird ending, we need to convert it to pixels
    925926                        if ( !/^\d+(px)?$/i.test( ret ) && /^\d/.test( ret ) ) {
    926927                                // Remember the original values
    927                                 var style = elem.style.left, runtimeStyle = elem.runtimeStyle.left;
     928                                var style = estyle.left, runtimeStyle = elem.runtimeStyle.left;
    928929
    929930                                // Put in the new values to get a computed value out
    930931                                elem.runtimeStyle.left = elem.currentStyle.left;
    931                                 elem.style.left = ret || 0;
    932                                 ret = elem.style.pixelLeft + "px";
     932                                estyle.left = ret || 0;
     933                                ret = estyle.pixelLeft + "px";
    933934
    934935                                // Revert the changed values
    935                                 elem.style.left = style;
     936                                estyle.left = style;
    936937                                elem.runtimeStyle.left = runtimeStyle;
    937938                        }
    938939                }
     
    11441145
    11451146                // Also, we need to make sure that the correct elements are being returned
    11461147                // (IE returns comment nodes in a '*' query)
     1148                var i = 0;
    11471149                if ( jQuery.browser.msie ) {
    1148                         for ( var i = 0; second[ i ]; i++ )
     1150                        for (; second[ i ]; i++ )
    11491151                                if ( second[ i ].nodeType != 8 )
    11501152                                        first.push( second[ i ] );
    11511153
    11521154                } else
    1153                         for ( var i = 0; second[ i ]; i++ )
     1155                        for (; second[ i ]; i++ )
    11541156                                first.push( second[ i ] );
    11551157
    11561158                return first;
  • src/fx.js

     
    7676                        if ( this.nodeType != 1)
    7777                                return false;
    7878
    79                         var opt = jQuery.extend({}, optall);
    80                         var hidden = jQuery(this).is(":hidden"), self = this;
     79                        var opt = jQuery.extend({}, optall),
     80                                hidden = jQuery(this).is(":hidden"), self = this;
    8181                       
    8282                        for ( var p in prop ) {
    8383                                if ( prop[p] == "hide" && hidden || prop[p] == "show" && !hidden )
  • src/selector.js

     
    114114
    115115                        t = jQuery.trim(t);
    116116
    117                         var foundToken = false;
     117                        var foundToken = false,
    118118
    119119                        // An attempt at speeding up child selectors that
    120120                        // point to a specific element tag
    121                         var re = quickChild;
    122                         var m = re.exec(t);
     121                                re = quickChild,
     122                                m = re.exec(t);
    123123
    124124                        if ( m ) {
    125125                                nodeName = m[1].toUpperCase();
     
    188188
    189189                                } else {
    190190                                        // Optimize for the case nodeName#idName
    191                                         var re2 = quickID;
    192                                         var m = re2.exec(t);
     191                                        re2 = quickID;
     192                                        m = re2.exec(t);
    193193                                       
    194194                                        // Re-organize the results, so that they're consistent
    195195                                        if ( m ) {
     
    222222                                                ret = r = oid && (!m[3] || jQuery.nodeName(oid, m[3])) ? [oid] : [];
    223223                                        } else {
    224224                                                // We need to find all descendant elements
    225                                                 for ( var i = 0; ret[i]; i++ ) {
     225                                                for ( i = 0; ret[i]; i++ ) {
    226226                                                        // Grab the tag name being searched for
    227227                                                        var tag = m[1] == "#" && m[3] ? m[3] : m[1] != "" || m[0] == "" ? "*" : m[2];
    228228
     
    242242                                                        var tmp = [];
    243243
    244244                                                        // Try to find the element with the ID
    245                                                         for ( var i = 0; r[i]; i++ )
     245                                                        for ( i = 0; r[i]; i++ )
    246246                                                                if ( r[i].getAttribute("id") == m[2] ) {
    247247                                                                        tmp = [ r[i] ];
    248248                                                                        break;
     
    301301                while ( t && t != last ) {
    302302                        last = t;
    303303
    304                         var p = jQuery.parse, m;
     304                        var p = jQuery.parse, m, i = 0, tmp = [];
    305305
    306                         for ( var i = 0; p[i]; i++ ) {
     306                        for ( ; p[i]; i++ ) {
    307307                                m = p[i].exec( t );
    308308
    309309                                if ( m ) {
     
    331331                                r = jQuery.classFilter(r, m[2], not);
    332332
    333333                        else if ( m[1] == "[" ) {
    334                                 var tmp = [], type = m[3];
     334                                var type = m[3], i = 0, rl = r.length;
    335335                               
    336                                 for ( var i = 0, rl = r.length; i < rl; i++ ) {
     336                                for ( ; i < rl; i++ ) {
    337337                                        var a = r[i], z = a[ jQuery.props[m[2]] || m[2] ];
    338338                                       
    339339                                        if ( z == null || /href|src|selected/.test(m[2]) )
     
    352352
    353353                        // We can get a speed boost by handling nth-child here
    354354                        } else if ( m[1] == ":" && m[2] == "nth-child" ) {
    355                                 var merge = {}, tmp = [],
     355                                var merge = {},
    356356                                        // parse equations like 'even', 'odd', '5', '2n', '3n+2', '4n-1', '-n+6'
    357357                                        test = /(-?)(\d*)n((?:\+|-)?\d*)/.exec(
    358358                                                m[3] == "even" && "2n" || m[3] == "odd" && "2n+1" ||
    359359                                                !/\D/.test(m[3]) && "0n+" + m[3] || m[3]),
    360360                                        // calculate the numbers (first)n+(last) including if they are negative
    361                                         first = (test[1] + (test[2] || 1)) - 0, last = test[3] - 0;
     361                                        first = (test[1] + (test[2] || 1)) - 0;
     362                                last = test[3] - 0;
    362363 
    363364                                // loop through all the elements left in the jQuery object
    364                                 for ( var i = 0, rl = r.length; i < rl; i++ ) {
     365                                for ( i = 0, rl = r.length; i < rl; i++ ) {
    365366                                        var node = r[i], parentNode = node.parentNode, id = jQuery.data(parentNode);
    366367
    367368                                        if ( !merge[id] ) {
     
    410411        },
    411412
    412413        dir: function( elem, dir ){
    413                 var matched = [];
    414                 var cur = elem[dir];
     414                var matched = [],
     415                        cur = elem[dir];
    415416                while ( cur && cur != document ) {
    416417                        if ( cur.nodeType == 1 )
    417418                                matched.push( cur );
  • src/event.js

     
    105105                if ( elem.nodeType == 3 || elem.nodeType == 8 )
    106106                        return;
    107107
    108                 var events = jQuery.data(elem, "events"), ret, index;
     108                var events = jQuery.data(elem, "events"), ret;
    109109
    110110                if ( events ) {
    111111                        // Unbind all events for the element
  • src/ajax.js

     
    233233                // If we're requesting a remote document
    234234                // and trying to load JSON or Script with a GET
    235235                if ( (!s.url.indexOf("http") || !s.url.indexOf("//")) && s.dataType == "script" && s.type.toLowerCase() == "get" ) {
    236                         var head = document.getElementsByTagName("head")[0];
    237                         var script = document.createElement("script");
     236                        var head = document.getElementsByTagName("head")[0],
     237                                script = document.createElement("script");
    238238                        script.src = s.url;
    239239                        if (s.scriptCharset)
    240240                                script.charset = s.scriptCharset;
     
    443443        },
    444444
    445445        httpData: function( r, type ) {
    446                 var ct = r.getResponseHeader("content-type");
    447                 var xml = type == "xml" || !type && ct && ct.indexOf("xml") >= 0;
    448                 var data = xml ? r.responseXML : r.responseText;
     446                var ct = r.getResponseHeader("content-type"),
     447                        xml = type == "xml" || !type && ct && ct.indexOf("xml") >= 0,
     448                        data = xml ? r.responseXML : r.responseText;
    449449
    450450                if ( xml && data.documentElement.tagName == "parsererror" )
    451451                        throw "parsererror";