Re: [jQuery] Re: Why mootools animations is more smooth than jquery?

2010-01-06 Thread Paul Kim
It is, at least in my FF 3.5.7 on Win 7, but I haven't the slightest clue as
to why. Thanks for sharing those demos.



On Wed, Jan 6, 2010 at 1:29 PM, Scott Sauyet scott.sau...@gmail.com wrote:

 On Jan 6, 3:44 pm, Acaz Souza acazso...@gmail.com wrote:
  MooTools:http://www.jsfiddle.net/4vnya/
  jQuery:http://www.jsfiddle.net/eFbwJ/36/
  (Compare the code, the effects. You decide.)
 
  Why mootools is more smooth than jquery?

 It's not, at least not in my FF3.5.6 on Win XP.

 Haven't you been here asking this question before?  Are you trying to
 get information or prove some obscure point?

  -- Scott



Re: [jQuery] Re: jQuery does not stripe visible table rows correctly

2010-01-01 Thread Paul Kim
Thanks for your reply. Your solution works. I had a feeling that :even and
:odd filters are zero-based, but found that to be odd in this situation.
So now that I have 2 ways to stripe visible table rows using jQuery, which
solution do you prefer?

$('#foobar tbody tr:visible:even').addClass('rowodd');
$('#foobar tbody tr:visible:odd').addClass('roweven');

or

$('#foobar tbody tr:visible').each(function(i) {
if ((i+1) % 2 === 0) {
$(this).addClass('roweven');
}
else {
$(this).addClass('rowodd');
}
});

I guess both solutions work so it really doesn't matter, but which method
would you choose? The first solution contains less code but the second
solution seems more intuitive.



2010/1/1 Šime Vidas sime.vi...@gmail.com

 Also, you really don't need two counters (i and j)

var rows = $('#foobar tbody tr:visible');
 for (var i = 0; i  rows.length; i++){
if ((i + 1) % 2 == 0) {
 rows.eq(i).addClass('roweven');
}
 else {
 rows.eq(i).addClass('rowodd');
}
}

 However, don't use the for loop, you have jQuery's each method...

$('#foobar tbody tr:visible').each(function(i) {
if ((i+1) % 2 === 0) {
$(this).addClass('roweven');
}
else {
$(this).addClass('rowodd');
}
});



Re: [jQuery] Re: jQuery does not stripe visible table rows correctly

2010-01-01 Thread Paul Kim
Thank you. Have a great New Year.

2010/1/1 Šime Vidas sime.vi...@gmail.com

 Well, definitely the shorter version :)
 You can put a comment above to remind you that :even and :odd are
 tricky

 // Remember, :even and :odd are zero-based, so it's reversed
 $('#foobar tbody tr:visible:even').addClass('rowodd');
 $('#foobar tbody tr:visible:odd').addClass('roweven');



Re: [jQuery] Re: jQuery does not stripe visible table rows correctly

2010-01-01 Thread Paul Kim
Thank you all for your helpful suggestions.

On Fri, Jan 1, 2010 at 2:37 PM, Karl Swedberg k...@englishrules.com wrote:


 On Jan 1, 2010, at 3:53 PM, Michael Geary wrote:

 I wouldn't use either version.

 Instead, I would change your CSS from:

 tr.rowodd { background-color: #FFF; }
 tr.roweven { background-color: #F2F2F2; }

 to:

 tr { background-color: #FFF; }
 tr.roweven { background-color: #F2F2F2; }


 and then use just one line of jQuery code:

 $('#foobar tr:visible:odd').addClass('roweven');

 Now you're doing only half the work and letting the CSS cacading rules take
 care of the rest.


 And if you need to support IE6, you might have trouble applying a
 background-color to a tr (I seem to recall having that problem in the
 past). If you do, you could do this instead:

 tr td { background-color: #FFF; }
 tr.roweven td { background-color: #F2F2F2; }


 --Karl

 
 Karl Swedberg
 www.englishrules.com
 www.learningjquery.com