In that case $(this).prev(".seriesOverlay") should do.

- Richard

On Fri, Jun 27, 2008 at 12:27 PM, hubbs <[EMAIL PROTECTED]> wrote:

>
> This is almost what I need.  But .seriesOverlay is not a child, but
> the previous div in the DOM, so it is right above it.
>
> Maybe I could use $(".seriesOverlay + .seriesItem")?
>
> On Jun 26, 2:47 am, "Richard D. Worth" <[EMAIL PROTECTED]> wrote:
> > If your .seriesOverlay is a child of your .seriesItem[1], you can do:
> >
> > $(".seriesItem").mouseover(function() {
> >   $(".seriesOverlay", this).hide();}).mouseout(function() {
> >
> >   $(".seriesOverlay", this).show();
> >
> > });
> >
> > Why this works:
> > * The thisArg in jQuery callbacks is always equal to the original element
> to
> > which the event is bound
> > * The jQuery function accepts an optional context as the second argument.
> > See
> >
> > http://docs.jquery.com/Core/jQuery#expressioncontext
> >
> > for more info.
> >
> > - Richard
> >
> > Richard D. Worthhttp://rdworth.org/
> >
> > [1] If you have a different structure, you might have to do something
> like
> > $(this).next(".seriesOverlay"), depending
> >
> > On Thu, Jun 26, 2008 at 1:02 AM, hubbs <[EMAIL PROTECTED]> wrote:
> >
> > > I have a listing of items, each of which has a transparent "cover"
> > > over each item, but when you mouse over the item, the transparency
> > > hides, and shows full color item, then on mouseout the "cover" is
> > > added again.
> >
> > > This works fine if I use IDs, but I want to get away from this, as I
> > > am not always sure about how many items I will have, so I don't want
> > > to have to keep adding more IDs to my jquery script.  How can I use
> > > the javascript "this" property, so that I can get away from using IDs,
> > > and just have the function happen on the element that the event is
> > > happening on?
> >
> > > Here is what I am using:
> >
> > >    $(".seriesItem").mouseover(function () {
> > >      $(".seriesOverlay").hide();
> > >    });
> > >    $(".seriesItem").mouseout(function () {
> > >      $(".seriesOverlay").show();
> > >    });
> >
> > > How could I incorporate "this" into my script?  Or am I going about it
> > > the wrong way?
> >
> > > I wanted to use classes, but obviously it shows and hides ALL items
> > > transparent cover.
>

Reply via email to