[jQuery] Re: Hover accordion (as on apple.com)

2007-08-03 Thread Dragan Krstic
I added some styling to inverted accordion and changed functionality a
little bit. Now there's no need hoverIntent plugin. Still there's some
styling issues in IE6

It can be found on: http://www.bydot.net/hoveracc/hoveracc_4.htm

@John
Why callback in animation method doesn't work when using step function?

-- 
Dragan Krstić krdr
http://krdr.ebloggy.com/


[jQuery] Re: Hover accordion (as on apple.com)

2007-08-02 Thread Dragan Krstic
First to thanks all on replays. I knew that my solution is not perfect, and
I hoped that someone will find better solution (secretly John).

@Justin

We all fill the pain. My knowledge of jQuery still have boundaries, trick is
to find way how to jump over it.

@John, Mitch
This looks and feels better than my solution. I knew that Apple use same
heights, but that was too easy ;). Now I'll try to your accordion
transform to inverted one.

John, you prove me that jQuery have some secret possibilities that aren't
documented (otherwise, they will not be secret :) ).

One more thing: In hours of desperation, I tried to make it by mootools. I
found mootools is much harder to learn. Last year I spent 3 hours from first
opening of jQuery.com until I made tabbed navigation with content loaded via
ajax.


[jQuery] Re: Hover accordion (as on apple.com)

2007-08-02 Thread Alexandre Plennevaux

Beautiful! Must be showcased! That easing effect give it a nice slick
finishing touch ! 

-Original Message-
From: jquery-en@googlegroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of John Resig
Sent: jeudi 2 août 2007 0:36
To: jquery-en@googlegroups.com
Subject: [jQuery] Re: Hover accordion (as on apple.com)


I still see a little bit of flicker in that new code that you posted - but I
was just able to pull together a demo that works quite nicely.

So here's a new, working, accordion (albeit, a very simple one):
http://dev.jquery.com/~john/plugins/accord/

compare with the old code:
http://dev.jquery.com/~john/plugins/accord/old.html

Just a couple extra lines. There's three problems that had to be solved, two
were CSS, one was jQuery.
1) The headers had to have no margins. (When two margins are next to each
other, the margins collapse.
2) The bodies had to have no padding. (Unless, of course, you wanted to
animate the padding of the elements as well - but I find it easier to just
make the content inside the bodies have margins/padding).
3) When animating two properties, the numbers weren't being rounded properly
(e.g. body A would be 40.5px (rounded to 40px) and body B would be 20.5px
(rounded to 20px) - causing lots of weird jittering to occur.

There's a hidden 'step' function in the jQuery animate function (which, up
until this point, I had little use for, and was considering
removing) that you can use to get the current number of pixels processed for
an animation. So you just compute the remainder, and you get a smooth
result.

This technique *requires* that the bodies all have equal heights (and if
you'll notice, in both Rico and Apple.com, they require that as
well) so that it looks smooth.

Additionally, I threw in a fun easing effect to make things nice and
awesome. Let me know what you guys think!

--John

On 8/1/07, Justin Sepulveda [EMAIL PROTECTED] wrote:

 Finally.  Someone else feels my pain.  I had just posted a message to 
 this group today about this as well.  I just wish there was an easier 
 way to remove that flicker/bounce that happens with the jQuery 
 standard slideUp/slideDown.  Having to call in that many scripts to 
 get this effect seems pretty un-jQuery.  But nice work!

 On Aug 1, 11:18 am, [EMAIL PROTECTED] wrote:
  My company redesigns a web site. Our head designer (as apple fan) 
  decided to put nasty inverted hover accordion on new site. So, 
  yesterday I started to develop a 
  prototype:http://www.bydot.net/hoveracc/hoveracc_1.htm
 
  Structure is:
  ul
li
  div class=omot
  a class=naslov_stavkeNaslov stavke 1/a
div class=sadrzaj_stavkeSadrzaj stavke 1/div
  /div
/li
li
  div class=omot
  a class=naslov_stavkeNaslov stavke 2/a
div class=sadrzaj_stavkeSadrzaj stavke 2/div
  /div
/li
li
  div class=omot a class=naslov_stavkeNaslov stavke 3/a
div class=sadrzaj_stavkeSadrzaj stavke 3/div
  /div
/li
li
  div class=omot a class=naslov_stavkeNaslov stavke 4/a
div class=sadrzaj_stavkeSadrzaj stavke 4/div
  /div
/li
  /ul
  where naslov_stavke is part that should be hidden or shown, and 
  sadrzaj_stavke is always visible. Omot means wrap.
  It took me about half an hour to make this piece, but, there's a 
  flicker that our designer didn't like.
  Never mind if you can do it by jQuery. We will copy from apple.com.
 
  Yeah, sure...
 
  So, I spent next 6 hours yesterday and 4 today to find solution.
  Actually, my idea was same all the time: to fixate elements by
  position: absolute and top property. Here he the list of problems I 
  had to solve:
  1) How to obtain consistency of li elements and children's. I did it 
  with div class=omot. In some time of development it was crucial 
  to have this div. Now, it isn't important, but it can help with styling.
  2) On which container element to position:relative. The best 
  solution is to put on ul element that contains inverted accordion
  3) How to remove position and top properties. There's no mention 
  about that in documentation
  4) How to obtain proper top values for elements that should not move.
  First, I wanted to do it just for elements that must remain static.
  This will be done after each hover. Then, I decided to recalculate 
  top's for each div class=sadrzaj_stavke:
 
  i = 0;
  visine = new Array();
  $(.sadrzaj_stavke).each(function(){visine[i]=$(this).position().to
  p;i
  ++;});
 
  which gives me wrong results all the time.
 
  In one moment I have two perfectly working scripts, but one worked 
  in up direction, second one in down direction :) Finally, I decide 
  to put in work original idea to calculate top's, and that's working 
  perfectly (I abandoned this idea because I wanted to make more 
  flexible script)
 
  Minor problems will be masked with images and css.
 
  This solution can be generally used to solve jQuery animation quirks.
  It can be found onhttp

[jQuery] Re: Hover accordion (as on apple.com)

2007-08-02 Thread Dragan Krstic
@All:

Ok. Here's a final solution for inverted hover accordion. hoverIntent plug
in is must. Structure is same as I posted earlier. Later during I will
upload it on web.
script
var radi1 = true;
var kd_opened;
var to_hide;
var height_op;

jQuery.easing.easeout = function(p, n, firstNum, delta, duration)
{
return -delta * ((n=n/duration-1)*n*n*n - 1) +
firstNum;
}

function otvoriSliku()
{

if(!$(this).siblings(.naslov_stavke).is(:visible)  radi1 )
{

radi1 = false;
to_hide = $(this).siblings(.naslov_stavke);
to_hide.show().height(0);

kd_opened.animate({height:hide},
{step: function(n){
to_hide.height(Math.ceil(height_op-n));
if(n == 0){kd_opened = to_hide;radi1 =
true;}
},
duration: 500,
easing: easeout
});
}
}
$(document).ready(function()
{
kd_opened = $(.naslov_stavke:first);
height_op = kd_opened.height();

$(.naslov_stavke:not(:first)).hide();

$(.sadrzaj_stavke).hoverIntent({
sensitivity: 1,
interval: 50,
over: otvoriSliku,
out: function(){}
 });

});
/script

Easing function is taken from Interface. Differences from  John's script
are:
1) John calculate height of opened headers before each animation. This
script calculates only once, on the beginning, to save some CPU cycles
2) Before animation, height of hidden header must be set to 0. This is
because of differences in behavior of inverted and real accordion.
3) In John script, if you try to click on header during animation, script
becomes nasty. Putting whole animation script in If(radi1) and checking with
if(n == 0){kd_opened = to_hide;radi1 = true;} I prevented run of new
animation before old one is finished.

@John:
You are such inspiration! Thanks man! Or: Hvala ti puno za sve , on my
native (Serbian)


[jQuery] Re: Hover accordion (as on apple.com)

2007-08-02 Thread Dragan Krstic
@John
Why callback doesn't work with step function?

Anyway, step function opens whole new field of synchronized animations.


-- 
Dragan Krstić krdr
http://krdr.ebloggy.com/


[jQuery] Re: Hover accordion (as on apple.com)

2007-08-02 Thread Justin Sepulveda

@John
Thanks for jumping on this as I'm sure you have many more things to
worry about in the jQuery world.  It's very much appreciated.

@Karl
Kick-assity.  I just had to note how awesome this word is.  Nice
work :-)

On Aug 2, 4:01 am, Dragan Krstic [EMAIL PROTECTED] wrote:
 @John
 Why callback doesn't work with step function?

 Anyway, step function opens whole new field of synchronized animations.

 --
 Dragan Krstić krdrhttp://krdr.ebloggy.com/



[jQuery] Re: Hover accordion (as on apple.com)

2007-08-02 Thread Justin Sepulveda

@John
One more thing.  I'm getting a serious amount of JavaScript errors,
the same error repeated over and over.  It seems to happen when i
click on a tab while another tab is open.

jquery.js (line 321)
too much recursion
[Break on this error] fn.constructor != Array  /function/i.test( fn
+  );

On Aug 2, 4:01 am, Dragan Krstic [EMAIL PROTECTED] wrote:
 @John
 Why callback doesn't work with step function?

 Anyway, step function opens whole new field of synchronized animations.

 --
 Dragan Krstić krdrhttp://krdr.ebloggy.com/



[jQuery] Re: Hover accordion (as on apple.com)

2007-08-02 Thread krdr . mft


 @John
 One more thing.  I'm getting a serious amount of JavaScript errors,
 the same error repeated over and over.  It seems to happen when i
 click on a tab while another tab is open.

 jquery.js (line 321)
 too much recursion
 [Break on this error] fn.constructor != Array  /function/i.test( fn
 +  );

It happens when you click on header during animations. Take a look on
3) in my previous post. Browser cannot handle so many recursions




[jQuery] Re: Hover accordion (as on apple.com)

2007-08-02 Thread Dragan Krstic
Last version of inverted accordion on:
http://www.bydot.net/hoveracc/hoveracc_3.htm
Enjoy...

2007/8/2, [EMAIL PROTECTED] [EMAIL PROTECTED]:



  @John
  One more thing.  I'm getting a serious amount of JavaScript errors,
  the same error repeated over and over.  It seems to happen when i
  click on a tab while another tab is open.
 
  jquery.js (line 321)
  too much recursion
  [Break on this error] fn.constructor != Array  /function/i.test( fn
  +  );

 It happens when you click on header during animations. Take a look on
 3) in my previous post. Browser cannot handle so many recursions





-- 
Dragan Krstić krdr
http://krdr.ebloggy.com/


[jQuery] Re: Hover accordion (as on apple.com)

2007-08-02 Thread Justin Sepulveda

I'm silly.  Ignore my post.  Just needed to put in an if statement
that checked if there was more than 1 panel visible.  If so, don't do
anything on click.

On Aug 2, 9:54 am, Dragan Krstic [EMAIL PROTECTED] wrote:
 Last version of inverted accordion 
 on:http://www.bydot.net/hoveracc/hoveracc_3.htm
 Enjoy...

 2007/8/2, [EMAIL PROTECTED] [EMAIL PROTECTED]:





   @John
   One more thing.  I'm getting a serious amount of JavaScript errors,
   the same error repeated over and over.  It seems to happen when i
   click on a tab while another tab is open.

   jquery.js (line 321)
   too much recursion
   [Break on this error] fn.constructor != Array  /function/i.test( fn
   +  );

  It happens when you click on header during animations. Take a look on
  3) in my previous post. Browser cannot handle so many recursions

 --
 Dragan Krstić krdrhttp://krdr.ebloggy.com/



[jQuery] Re: Hover accordion (as on apple.com)

2007-08-01 Thread Justin Sepulveda

Finally.  Someone else feels my pain.  I had just posted a message to
this group today about this as well.  I just wish there was an easier
way to remove that flicker/bounce that happens with the jQuery
standard slideUp/slideDown.  Having to call in that many scripts to
get this effect seems pretty un-jQuery.  But nice work!

On Aug 1, 11:18 am, [EMAIL PROTECTED] wrote:
 My company redesigns a web site. Our head designer (as apple fan)
 decided to put nasty inverted hover accordion on new site. So,
 yesterday I started to develop a 
 prototype:http://www.bydot.net/hoveracc/hoveracc_1.htm

 Structure is:
 ul
   li
 div class=omot
 a class=naslov_stavkeNaslov stavke 1/a
   div class=sadrzaj_stavkeSadrzaj stavke 1/div
 /div
   /li
   li
 div class=omot
 a class=naslov_stavkeNaslov stavke 2/a
   div class=sadrzaj_stavkeSadrzaj stavke 2/div
 /div
   /li
   li
 div class=omot a class=naslov_stavkeNaslov stavke 3/a
   div class=sadrzaj_stavkeSadrzaj stavke 3/div
 /div
   /li
   li
 div class=omot a class=naslov_stavkeNaslov stavke 4/a
   div class=sadrzaj_stavkeSadrzaj stavke 4/div
 /div
   /li
 /ul
 where naslov_stavke is part that should be hidden or shown, and
 sadrzaj_stavke is always visible. Omot means wrap.
 It took me about half an hour to make this piece, but, there's a
 flicker that our designer didn't like.
 Never mind if you can do it by jQuery. We will copy from apple.com.

 Yeah, sure...

 So, I spent next 6 hours yesterday and 4 today to find solution.
 Actually, my idea was same all the time: to fixate elements by
 position: absolute and top property. Here he the list of problems I
 had to solve:
 1) How to obtain consistency of li elements and children's. I did it
 with div class=omot. In some time of development it was crucial to
 have this div. Now, it isn't important, but it can help with styling.
 2) On which container element to position:relative. The best solution
 is to put on ul element that contains inverted accordion
 3) How to remove position and top properties. There's no mention about
 that in documentation
 4) How to obtain proper top values for elements that should not move.
 First, I wanted to do it just for elements that must remain static.
 This will be done after each hover. Then, I decided to recalculate
 top's for each div class=sadrzaj_stavke:

 i = 0;
 visine = new Array();
 $(.sadrzaj_stavke).each(function(){visine[i]=$(this).position().top;i
 ++;});

 which gives me wrong results all the time.

 In one moment I have two perfectly working scripts, but one worked in
 up direction, second one in down direction :)
 Finally, I decide to put in work original idea to calculate top's, and
 that's working perfectly (I abandoned this idea because I wanted to
 make more flexible script)

 Minor problems will be masked with images and css.

 This solution can be generally used to solve jQuery animation quirks.
 It can be found onhttp://www.bydot.net/hoveracc/hoveracc_2.htm

 PS How to start new threads directly from gmail?



[jQuery] Re: Hover accordion (as on apple.com)

2007-08-01 Thread John Resig

I still see a little bit of flicker in that new code that you posted -
but I was just able to pull together a demo that works quite nicely.

So here's a new, working, accordion (albeit, a very simple one):
http://dev.jquery.com/~john/plugins/accord/

compare with the old code:
http://dev.jquery.com/~john/plugins/accord/old.html

Just a couple extra lines. There's three problems that had to be
solved, two were CSS, one was jQuery.
1) The headers had to have no margins. (When two margins are next to
each other, the margins collapse.
2) The bodies had to have no padding. (Unless, of course, you wanted
to animate the padding of the elements as well - but I find it easier
to just make the content inside the bodies have margins/padding).
3) When animating two properties, the numbers weren't being rounded
properly (e.g. body A would be 40.5px (rounded to 40px) and body B
would be 20.5px (rounded to 20px) - causing lots of weird jittering to
occur.

There's a hidden 'step' function in the jQuery animate function
(which, up until this point, I had little use for, and was considering
removing) that you can use to get the current number of pixels
processed for an animation. So you just compute the remainder, and you
get a smooth result.

This technique *requires* that the bodies all have equal heights (and
if you'll notice, in both Rico and Apple.com, they require that as
well) so that it looks smooth.

Additionally, I threw in a fun easing effect to make things nice and
awesome. Let me know what you guys think!

--John

On 8/1/07, Justin Sepulveda [EMAIL PROTECTED] wrote:

 Finally.  Someone else feels my pain.  I had just posted a message to
 this group today about this as well.  I just wish there was an easier
 way to remove that flicker/bounce that happens with the jQuery
 standard slideUp/slideDown.  Having to call in that many scripts to
 get this effect seems pretty un-jQuery.  But nice work!

 On Aug 1, 11:18 am, [EMAIL PROTECTED] wrote:
  My company redesigns a web site. Our head designer (as apple fan)
  decided to put nasty inverted hover accordion on new site. So,
  yesterday I started to develop a 
  prototype:http://www.bydot.net/hoveracc/hoveracc_1.htm
 
  Structure is:
  ul
li
  div class=omot
  a class=naslov_stavkeNaslov stavke 1/a
div class=sadrzaj_stavkeSadrzaj stavke 1/div
  /div
/li
li
  div class=omot
  a class=naslov_stavkeNaslov stavke 2/a
div class=sadrzaj_stavkeSadrzaj stavke 2/div
  /div
/li
li
  div class=omot a class=naslov_stavkeNaslov stavke 3/a
div class=sadrzaj_stavkeSadrzaj stavke 3/div
  /div
/li
li
  div class=omot a class=naslov_stavkeNaslov stavke 4/a
div class=sadrzaj_stavkeSadrzaj stavke 4/div
  /div
/li
  /ul
  where naslov_stavke is part that should be hidden or shown, and
  sadrzaj_stavke is always visible. Omot means wrap.
  It took me about half an hour to make this piece, but, there's a
  flicker that our designer didn't like.
  Never mind if you can do it by jQuery. We will copy from apple.com.
 
  Yeah, sure...
 
  So, I spent next 6 hours yesterday and 4 today to find solution.
  Actually, my idea was same all the time: to fixate elements by
  position: absolute and top property. Here he the list of problems I
  had to solve:
  1) How to obtain consistency of li elements and children's. I did it
  with div class=omot. In some time of development it was crucial to
  have this div. Now, it isn't important, but it can help with styling.
  2) On which container element to position:relative. The best solution
  is to put on ul element that contains inverted accordion
  3) How to remove position and top properties. There's no mention about
  that in documentation
  4) How to obtain proper top values for elements that should not move.
  First, I wanted to do it just for elements that must remain static.
  This will be done after each hover. Then, I decided to recalculate
  top's for each div class=sadrzaj_stavke:
 
  i = 0;
  visine = new Array();
  $(.sadrzaj_stavke).each(function(){visine[i]=$(this).position().top;i
  ++;});
 
  which gives me wrong results all the time.
 
  In one moment I have two perfectly working scripts, but one worked in
  up direction, second one in down direction :)
  Finally, I decide to put in work original idea to calculate top's, and
  that's working perfectly (I abandoned this idea because I wanted to
  make more flexible script)
 
  Minor problems will be masked with images and css.
 
  This solution can be generally used to solve jQuery animation quirks.
  It can be found onhttp://www.bydot.net/hoveracc/hoveracc_2.htm
 
  PS How to start new threads directly from gmail?




[jQuery] Re: Hover accordion (as on apple.com)

2007-08-01 Thread Karl Swedberg

John,

Thank you so much for replying to this thread. Your demo looks  
absolutely fantastic!


Justin asked me about this issue a while back on learningjquery.com,  
and I had no idea where to even begin. The problem has been nagging  
at me ever since, but since I didn't have anything helpful to offer,  
I thought I'd keep my mouth shut.


I'm sure this will be a huge hit if people are made aware of it. Any  
thoughts about putting it out for others to see? Maybe a blog post or  
something? This is just one more great example of your crescent fresh  
programming skills! Your kick-assity knows no bounds.


Cheers,

--Karl
_
Karl Swedberg
www.englishrules.com
www.learningjquery.com



On Aug 1, 2007, at 7:36 PM, John Resig wrote:



I still see a little bit of flicker in that new code that you posted -
but I was just able to pull together a demo that works quite nicely.

So here's a new, working, accordion (albeit, a very simple one):
http://dev.jquery.com/~john/plugins/accord/

compare with the old code:
http://dev.jquery.com/~john/plugins/accord/old.html

Just a couple extra lines. There's three problems that had to be
solved, two were CSS, one was jQuery.
1) The headers had to have no margins. (When two margins are next to
each other, the margins collapse.
2) The bodies had to have no padding. (Unless, of course, you wanted
to animate the padding of the elements as well - but I find it easier
to just make the content inside the bodies have margins/padding).
3) When animating two properties, the numbers weren't being rounded
properly (e.g. body A would be 40.5px (rounded to 40px) and body B
would be 20.5px (rounded to 20px) - causing lots of weird jittering to
occur.

There's a hidden 'step' function in the jQuery animate function
(which, up until this point, I had little use for, and was considering
removing) that you can use to get the current number of pixels
processed for an animation. So you just compute the remainder, and you
get a smooth result.

This technique *requires* that the bodies all have equal heights (and
if you'll notice, in both Rico and Apple.com, they require that as
well) so that it looks smooth.

Additionally, I threw in a fun easing effect to make things nice and
awesome. Let me know what you guys think!

--John

On 8/1/07, Justin Sepulveda [EMAIL PROTECTED] wrote:


Finally.  Someone else feels my pain.  I had just posted a message to
this group today about this as well.  I just wish there was an easier
way to remove that flicker/bounce that happens with the jQuery
standard slideUp/slideDown.  Having to call in that many scripts to
get this effect seems pretty un-jQuery.  But nice work!

On Aug 1, 11:18 am, [EMAIL PROTECTED] wrote:

My company redesigns a web site. Our head designer (as apple fan)
decided to put nasty inverted hover accordion on new site. So,
yesterday I started to develop a prototype:http://www.bydot.net/ 
hoveracc/hoveracc_1.htm


Structure is:
ul
  li
div class=omot
a class=naslov_stavkeNaslov stavke 1/a
  div class=sadrzaj_stavkeSadrzaj stavke 1/div
/div
  /li
  li
div class=omot
a class=naslov_stavkeNaslov stavke 2/a
  div class=sadrzaj_stavkeSadrzaj stavke 2/div
/div
  /li
  li
div class=omot a class=naslov_stavkeNaslov stavke 3/a
  div class=sadrzaj_stavkeSadrzaj stavke 3/div
/div
  /li
  li
div class=omot a class=naslov_stavkeNaslov stavke 4/a
  div class=sadrzaj_stavkeSadrzaj stavke 4/div
/div
  /li
/ul
where naslov_stavke is part that should be hidden or shown, and
sadrzaj_stavke is always visible. Omot means wrap.
It took me about half an hour to make this piece, but, there's a
flicker that our designer didn't like.
Never mind if you can do it by jQuery. We will copy from  
apple.com.


Yeah, sure...

So, I spent next 6 hours yesterday and 4 today to find solution.
Actually, my idea was same all the time: to fixate elements by
position: absolute and top property. Here he the list of problems I
had to solve:
1) How to obtain consistency of li elements and children's. I did it
with div class=omot. In some time of development it was  
crucial to
have this div. Now, it isn't important, but it can help with  
styling.
2) On which container element to position:relative. The best  
solution

is to put on ul element that contains inverted accordion
3) How to remove position and top properties. There's no mention  
about

that in documentation
4) How to obtain proper top values for elements that should not  
move.

First, I wanted to do it just for elements that must remain static.
This will be done after each hover. Then, I decided to recalculate
top's for each div class=sadrzaj_stavke:

i = 0;
visine = new Array();
$(.sadrzaj_stavke).each(function(){visine[i]=$(this).position 
().top;i

++;});

which gives me wrong results all the time.

In one moment I have two perfectly working scripts, but one  
worked in

up direction, second one in down direction :)
Finally, I decide to 

[jQuery] Re: Hover accordion (as on apple.com)

2007-08-01 Thread John Resig

 I'm sure this will be a huge hit if people are made aware of it. Any
 thoughts about putting it out for others to see? Maybe a blog post or
 something? This is just one more great example of your crescent fresh
 programming skills! Your kick-assity knows no bounds.

I'm a little bit hesitant because I'm 95% certain that I'll be
changing how the step callback works. Right now it's a pixel value (or
a decimal if opacity), but it'll probably become just a decimal in 1.2
(a number 0 to 1, representing how far along the animation is).

I'm sure this will make for a good 1.2 demo though, as it'll actually
make the code for it simpler, I suspect.

--John


[jQuery] Re: Hover accordion (as on apple.com)

2007-08-01 Thread John Resig

Mitch -

I just re-read your post and I think I replied incorrectly. But
following up on it, the revised solution that I posted solves your
problem completely. Let me know if it works for you.

--John

On 8/1/07, Mitchell Waite [EMAIL PROTECTED] wrote:
 John

 Very sweet!

 This is almost perfect except for one thing, I think is critical.

 Try tripling the number of items in the first menu. When you click menu1 and
 menu2 everything works fine, the height does not change. But when you click
 menu3 the bottom of the menu rises up and the height changes.

 This looks strange and gives motion sickness.

 Is there a simple way to make the height of the accordion from top to bottom
 a constant like the accordion example link I posted?

 I take my hat off for how elegant this little puppy is, most other solutions
 are really complicated.

 Mitch

 -Original Message-
 From: jquery-en@googlegroups.com [mailto:[EMAIL PROTECTED] On
 Behalf Of John Resig
 Sent: Wednesday, August 01, 2007 4:36 PM
 To: jquery-en@googlegroups.com
 Subject: [jQuery] Re: Hover accordion (as on apple.com)


 I still see a little bit of flicker in that new code that you posted -
 but I was just able to pull together a demo that works quite nicely.

 So here's a new, working, accordion (albeit, a very simple one):
 http://dev.jquery.com/~john/plugins/accord/








[jQuery] Re: Hover accordion (as on apple.com)

2007-08-01 Thread John Resig

On 8/1/07, Mitchell Waite [EMAIL PROTECTED] wrote:
 Nice update, the DD constant height is great.

 However, if you close the top menu the height still collapses. In my Spry
 example

 http://www.whatbird.com/wwwroot/Components/Accordion%20Menu.html

 they get around that issue by making it so one menu must always remain open.
 Can you see a way to add that restraint?

Yep, done - just a simple if () statement:
http://dev.jquery.com/~john/plugins/accord/

--John


[jQuery] Re: FW: [jQuery] Re: Hover accordion (as on apple.com)

2007-08-01 Thread Mitch

If you add height: 300px; to the dl:

dl { width: 300px; height: 300px; }

it will do what I am talking about.

But I bet if I added any new li it would need to be readjusted.
Ouch.






[jQuery] Re: Hover accordion (as on apple.com)

2007-08-01 Thread John Resig

Very nice - you even added audio! :-)

--John

On 8/2/07, Mitchell Waite [EMAIL PROTECTED] wrote:
 I made the entire bar a hotlink, added an image and sound.

 http://www.whatbird.com/wwwroot/accord.html

 This is VERY easy to use.

 Oh and don't be mad, I made the easing linear, because, well that bouncing
 is very cool and this is a great example of how it can be used.

 But after a while it gets like any over down effect...a bit old.

 Still its fantastic!