.css() returning blank string in FF & Chrome but "undefined" in IE
Using jQuery v1.4.2, Firefox 3.6.6, Chrome 4.1, IE 6,7,8.
I'm using jQuery .css() function to get the value of the css attribute "background". The attribute has not previously been assigned a value (either in script or style sheet).
e.g. alert($(this).css("background"));
In Firefox and Chrome, the return value is an empty string ("").
However in IE 6,7,8, the return value is "undefined".
It also makes the following statement impossible:
alert($(this).css("background").indexOf("somepic.gif"));
Because css() in IE doesn't return a blank string, doing indexOf() raises an error.
It would be very helpful, and in the interest of cross-browser scripting compatibility, for jQuery to return a blank string *for all browsers* if the css attribute isn't set. Otherwise we have to check for both "" or "undefined" which is the sort of pain jQuery users are trying to avoid.