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?

Reply via email to