Commit ef6d8779 authored by Mike Sherov's avatar Mike Sherov

Fixes #11938: Adding array getter method to jQuery.fn.css

parent a918dc8a
...@@ -798,7 +798,7 @@ jQuery.extend({ ...@@ -798,7 +798,7 @@ jQuery.extend({
bulk = key == null; bulk = key == null;
// Sets many values // Sets many values
if ( key && typeof key === "object" ) { if ( jQuery.type( key ) === "object" ) {
chainable = true; chainable = true;
for ( i in key ) { for ( i in key ) {
jQuery.access( elems, fn, i, key[i], true, emptyGet, raw ); jQuery.access( elems, fn, i, key[i], true, emptyGet, raw );
......
...@@ -98,6 +98,21 @@ function showHide( elements, show ) { ...@@ -98,6 +98,21 @@ function showHide( elements, show ) {
jQuery.fn.extend({ jQuery.fn.extend({
css: function( name, value ) { css: function( name, value ) {
return jQuery.access( this, function( elem, name, value ) { return jQuery.access( this, function( elem, name, value ) {
var styles, len,
map = {},
i = 0;
if ( jQuery.isArray( name ) ) {
styles = getStyles( elem );
len = name.length;
for ( ; i < len; i++ ) {
map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles );
}
return map;
}
return value !== undefined ? return value !== undefined ?
jQuery.style( elem, name, value ) : jQuery.style( elem, name, value ) :
jQuery.css( elem, name ); jQuery.css( elem, name );
......
...@@ -257,6 +257,22 @@ test("css(String, Object)", function() { ...@@ -257,6 +257,22 @@ test("css(String, Object)", function() {
ok( success, "Setting RGBA values does not throw Error" ); ok( success, "Setting RGBA values does not throw Error" );
}); });
test( "css(Array)", function() {
expect( 2 );
var expectedMany = {
"overflow": "visible",
"width": "16px"
},
expectedSingle = {
"width": "16px"
},
elem = jQuery("<div></div>").appendTo("#qunit-fixture");
deepEqual( elem.css( expectedMany ).css([ "overflow", "width" ]), expectedMany, "Getting multiple element array" );
deepEqual( elem.css( expectedSingle ).css([ "width" ]), expectedSingle, "Getting single element array" );
});
if ( !jQuery.support.opacity ) { if ( !jQuery.support.opacity ) {
test("css(String, Object) for MSIE", function() { test("css(String, Object) for MSIE", function() {
expect( 5 ); expect( 5 );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment