opacity is now retrieved from stylesheet in IE. fixes #3981
This commit is contained in:
parent
b763cc6602
commit
ec3ebd3e8a
12
src/css.js
12
src/css.js
|
@ -120,12 +120,18 @@ jQuery.extend({
|
||||||
},
|
},
|
||||||
|
|
||||||
curCSS: function( elem, name, force ) {
|
curCSS: function( elem, name, force ) {
|
||||||
var ret, style = elem.style;
|
var ret, style = elem.style, filter;
|
||||||
|
|
||||||
// IE uses filters for opacity
|
// IE uses filters for opacity
|
||||||
if ( !jQuery.support.opacity && name == "opacity" ) {
|
if ( !jQuery.support.opacity && name == "opacity" ) {
|
||||||
ret = style.filter && style.filter.indexOf("opacity=") >= 0 ?
|
filter = (filter = style.filter) && filter.indexOf("opacity=") >= 0 ?
|
||||||
(parseFloat( style.filter.match(/opacity=([^)]*)/)[1] ) / 100) + '':
|
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 === "" ?
|
return ret === "" ?
|
||||||
|
|
|
@ -4,6 +4,9 @@
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||||
<title>jQuery Test Suite</title>
|
<title>jQuery Test Suite</title>
|
||||||
<link rel="Stylesheet" media="screen" href="qunit/testsuite.css" />
|
<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 -->
|
<!-- Includes -->
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
var jQuery = this.jQuery || "jQuery", // For testing .noConflict()
|
var jQuery = this.jQuery || "jQuery", // For testing .noConflict()
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
module("css");
|
module("css");
|
||||||
|
|
||||||
test("css(String|Hash)", function() {
|
test("css(String|Hash)", function() {
|
||||||
expect(21);
|
expect(23);
|
||||||
|
|
||||||
equals( jQuery('#main').css("display"), 'none', 'Check for css property "display"');
|
equals( jQuery('#main').css("display"), 'none', 'Check for css property "display"');
|
||||||
|
|
||||||
|
@ -34,6 +34,10 @@ test("css(String|Hash)", function() {
|
||||||
});
|
});
|
||||||
jQuery('#foo').css({opacity: ''});
|
jQuery('#foo').css({opacity: ''});
|
||||||
equals( jQuery('#foo').css('opacity'), '1', "Assert opacity is 1 when set to an empty String" );
|
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() {
|
test("css(String, Object)", function() {
|
||||||
|
|
Loading…
Reference in a new issue