So can I do this? if ($('#subnav-1').css('display') == "block") $('#subnav-1').css ('background-color', '#f00');
That is, if this element has display:block then turn the background red? Just a hypothetical example, of course. On Jun 17, 10:55 pm, Ricardo <ricardob...@gmail.com> wrote: > $('#subnav-1').toggle(); > > http://docs.jquery.com/Effects/toggle > > You can also access the display property with $('#subnav-1').css > ('display'); > > On Jun 17, 10:02 pm, Jake Barnes <lawrence.krub...@gmail.com> wrote: > > > > > This code works, but it seems inelegant: > > > if ($("#subnav-1")[0].style.display == "block") $("#subnav-1") > > [0].style.display = "none"; > > > This seems to violate The One True jQuery Way: > > > [0] > > > I assume I'm not suppose to do that. > > > The each() method is more elegant, but it is more verbose: > > > $("#subnav-1").each(function() { > > if (this.style.display == "block") this.style.display = "none"; > > > } > > > Curious if there is another, shorter way to do this?