},
curCSS: function( elem, name, force ) {
- var ret, style = elem.style;
+ var ret, style = elem.style, filter;
// IE uses filters for opacity
if ( !jQuery.support.opacity && name == "opacity" ) {
- ret = style.filter && style.filter.indexOf("opacity=") >= 0 ?
- (parseFloat( style.filter.match(/opacity=([^)]*)/)[1] ) / 100) + '':
+ filter = (filter = style.filter) && filter.indexOf("opacity=") >= 0 ?
+ filter :
+ (filter = elem.currentStyle[ 'filter' ]) && filter.indexOf("opacity=") >= 0 ?
+ filter :
+ null;
+
+ ret = filter && filter.indexOf("opacity=") >= 0 ?
+ (parseFloat( filter.match(/opacity=([^)]*)/)[1] ) / 100) + '':
"";
return ret === "" ?
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>jQuery Test Suite</title>
<link rel="Stylesheet" media="screen" href="qunit/testsuite.css" />
+ <style type="text/css" media="screen">
+ ol#empty { opacity: 0; filter:Alpha(opacity=0); } /* for testing opacity set in styles in IE */
+ </style>
<!-- Includes -->
<script type="text/javascript">
var jQuery = this.jQuery || "jQuery", // For testing .noConflict()
module("css");
test("css(String|Hash)", function() {
- expect(21);
+ expect(23);
equals( jQuery('#main').css("display"), 'none', 'Check for css property "display"');
});
jQuery('#foo').css({opacity: ''});
equals( jQuery('#foo').css('opacity'), '1', "Assert opacity is 1 when set to an empty String" );
+
+ equals( jQuery('#empty').css('opacity'), '0', "Assert opacity is accessible via filter property set in stylesheet in IE" );
+ jQuery('#empty').css({ opacity: '1' });
+ equals( jQuery('#empty').css('opacity'), '1', "Assert opacity is taken from style attribute when set vs stylesheet in IE with filters" );
});
test("css(String, Object)", function() {