git.asbjorn.biz
/
jquery.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Test for #2069
[jquery.git]
/
src
/
core.js
diff --git
a/src/core.js
b/src/core.js
index
6e1ed9e
..
1ec8de0
100644
(file)
--- a/
src/core.js
+++ b/
src/core.js
@@
-353,7
+353,10
@@
jQuery.fn = jQuery.prototype = {
selector = jQuery.multiFilter( selector, this );
return this.filter(function() {
selector = jQuery.multiFilter( selector, this );
return this.filter(function() {
- return jQuery.inArray( this, selector ) < 0;
+ // check to see if the selector is array-like otherwise assume it is just a DOM element
+ return ( selector.length && selector[selector.length - 1] !== undefined )
+ ? jQuery.inArray( this, selector ) < 0
+ : this != selector;
});
},
});
},
@@
-418,31
+421,32
@@
jQuery.fn = jQuery.prototype = {
}
}
- } else
- return this.each(function(){
- if ( this.nodeType != 1 )
- return;
+ }
- if ( value.constructor == Array && /radio|checkbox/.test( this.type ) )
- this.checked = (jQuery.inArray(this.value, value) >= 0 ||
- jQuery.inArray(this.name, value) >= 0);
+ return this.each(function(){
+ if ( this.nodeType != 1 )
+ return;
- else if ( jQuery.nodeName( this, "select" ) ) {
- var values = value.constructor == Array ?
- value :
- [ value ];
+ if ( value.constructor == Array && /radio|checkbox/.test( this.type ) )
+ this.checked = (jQuery.inArray(this.value, value) >= 0 ||
+ jQuery.inArray(this.name, value) >= 0);
- jQuery( "option", this ).each(function(){
- this.selected = (jQuery.inArray( this.value, values ) >= 0 ||
- jQuery.inArray( this.text, values ) >= 0);
- });
+ else if ( jQuery.nodeName( this, "select" ) ) {
+ var values = value.constructor == Array ?
+ value :
+ [ value ];
- if ( !values.length )
- this.selectedIndex = -1;
+ jQuery( "option", this ).each(function(){
+ this.selected = (jQuery.inArray( this.value, values ) >= 0 ||
+ jQuery.inArray( this.text, values ) >= 0);
+ });
- } else
- this.value = value;
- });
+ if ( !values.length )
+ this.selectedIndex = -1;
+
+ } else
+ this.value = value;
+ });
},
html: function( value ) {
},
html: function( value ) {
@@
-815,6
+819,12
@@
jQuery.extend({
"1" :
ret;
}
"1" :
ret;
}
+ // Opera sometimes will give the wrong display answer, this fixes it, see #2037
+ if ( jQuery.browser.opera && name == "display" ) {
+ var save = elem.style.display;
+ elem.style.display = "block";
+ elem.style.display = save;
+ }
// Make sure we're using the right name for getting the float value
if ( name.match( /float/i ) )
// Make sure we're using the right name for getting the float value
if ( name.match( /float/i ) )
@@
-971,9
+981,9
@@
jQuery.extend({
div.childNodes :
[];
div.childNodes :
[];
- for ( var i = tbody.length - 1; i >= 0 ; --i )
- if ( jQuery.nodeName( tbody[ i ], "tbody" ) && !tbody[ i ].childNodes.length )
- tbody[ i ].parentNode.removeChild( tbody[ i ] );
+ for ( var j = tbody.length - 1; j >= 0 ; --j )
+ if ( jQuery.nodeName( tbody[ j ], "tbody" ) && !tbody[ j ].childNodes.length )
+ tbody[ j ].parentNode.removeChild( tbody[ j ] );
// IE completely kills leading whitespace when innerHTML is used
if ( /^\s/.test( elem ) )
// IE completely kills leading whitespace when innerHTML is used
if ( /^\s/.test( elem ) )