aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortimmywil <tim.willison@thisismedium.com>2011-04-01 21:38:54 -0400
committertimmywil <tim.willison@thisismedium.com>2011-04-03 19:13:41 -0400
commit8cbf551a48cbc47eccba2050e95745f70166ae1d (patch)
tree47daf679eda1210c67dbcd7f7b543950d0197569
parent5fc2281fcc83783b86647a5a86380b9ac21e7f79 (diff)
downloadjquery-8cbf551a48cbc47eccba2050e95745f70166ae1d.tar.gz
jquery-8cbf551a48cbc47eccba2050e95745f70166ae1d.zip
#5413 - Much shorter solution for getting width/height in ie6
- #8255 Added support for the list attribute in browsers that support it (it is automatically readonly, but can be set if using getAttribute( name, 2)
-rw-r--r--src/attributes.js16
-rw-r--r--test/index.html4
-rw-r--r--test/unit/attributes.js6
3 files changed, 10 insertions, 16 deletions
diff --git a/src/attributes.js b/src/attributes.js
index f29c340a3..5afcffce3 100644
--- a/src/attributes.js
+++ b/src/attributes.js
@@ -446,20 +446,6 @@ if ( !jQuery.support.getSetAttribute ) {
return value;
}
};
-
- // Retrieving the width/height attributes on an
- // element with display: none returns 0 in ie6/7 (#5413)
- jQuery.each([ "width", "height" ], function( i, name ) {
- jQuery.attrHooks[ name ] = jQuery.extend( jQuery.attrHooks[ name ], {
- get: function( elem ) {
- var ret;
- jQuery.swap( elem, { visibility: "hidden", display: "block" }, function() {
- ret = elem.getAttribute( name );
- });
- return ret;
- }
- });
- });
}
// Remove certain attrs if set to false
@@ -481,7 +467,7 @@ jQuery.each([ "selected", "checked", "readonly", "disabled" ], function( i, name
// Some attributes require a special call on IE
if ( !jQuery.support.hrefNormalized ) {
- jQuery.each([ "href", "src", "style" ], function( i, name ) {
+ jQuery.each([ "href", "src", "style", "width", "height", "list" ], function( i, name ) {
jQuery.attrHooks[ name ] = jQuery.extend( jQuery.attrHooks[ name ], {
get: function( elem ) {
return elem.getAttribute( name, 2 );
diff --git a/test/index.html b/test/index.html
index c7c2ae55d..a10655089 100644
--- a/test/index.html
+++ b/test/index.html
@@ -203,6 +203,10 @@ Z</textarea>
<select name="D4" disabled="disabled">
<option selected="selected" value="NO">NO</option>
</select>
+ <input id="list-test" type="text" />
+ <datalist id="datalist">
+ <option value="option"></option>
+ </datalist>
</form>
<div id="moretests">
<form>
diff --git a/test/unit/attributes.js b/test/unit/attributes.js
index a73b51fc5..ad051649f 100644
--- a/test/unit/attributes.js
+++ b/test/unit/attributes.js
@@ -75,7 +75,7 @@ test("prop(String, Object)", function() {
});
test("attr(String)", function() {
- expect(30);
+ expect(31);
equals( jQuery('#text1').attr('type'), "text", 'Check for type attribute' );
equals( jQuery('#radio1').attr('type'), "radio", 'Check for type attribute' );
@@ -108,6 +108,10 @@ test("attr(String)", function() {
jQuery('<a/>').attr({ 'id': 'tAnchor5', 'href': '#5' }).appendTo('#main');
equals( jQuery('#tAnchor5').attr('href'), "#5", 'Check for non-absolute href (an anchor)' );
+ // list attribute is readonly by default in browsers that support it
+ jQuery("#list-test").attr("list", "datalist");
+ equals( jQuery("#list-test").attr("list"), "datalist", "Check setting list attribute" );
+
// Related to [5574] and [5683]
var body = document.body, $body = jQuery(body);