Tuesday, December 30, 2008

[jQuery] Re: Please help me on a .lt method

Hi Karl,

Thanks very much for your quick helps.

Feel very nice to hear from you. You write a very nice book. I can write some simple codes after reading your books for only a week. I'm reading the seventh chapter now.

Actually I'm going to release a website for our Chinese learning English Vocabularies in a month, and I hope my scripts work well on my site.

Thanks again. 

On Wed, Dec 31, 2008 at 1:17 PM, Karl Swedberg <karl@englishrules.com> wrote:
Hi Samuel,

Sorry about the problems you're having with the code. The .lt() and .gt() methods were removed from jQuery shortly after the book was published. In their place, you can use the :lt() and :gt() selectors or the .slice() method. The .slice() method is quite versatile, and takes either one or two arguments. To replicate that code using .slice() you could do this:

$table.find('tbody tr').show()
.slice(0, 2)
.hide()
.end()
.slice(5)
.end();



On Dec 30, 2008, at 10:30 PM, Samuel Wu wrote:


Hi, everyone

I started writing jquery from last week with the help from a very good
book Learning Jquery.

I met a problem when reading the book, which has the script:

<code>
$table.find('tbody tr').show()
.lt(2)
.hide()
.end()
.gt(5)
.end();
</code>

Where 2 and 5 are different from the book, but I think it has no
effect to the problem.

I haven't met a lt or gt method before, I can only write
<code>
   $table.find('tbody tr:lt(2)').hide();
   $table.find('tbody tr:gt(5)').hide();
</code>

I tried the author's code, which didn't work on my browser. the
browser said
"TypeError: $("table").find("tbody tr").show().lt is not a function"

I also tried this way:
<code>
var $trow=$table.find('tbody tr')
$trow.lt(2).hide()
<code>

the problem still exists there.

My question is:
Is lt or gt a method used as a  selector ?
If I want to implement the chain actions like the first code, how
could I do that?

Any help is appreciated. thanks very much. Happy new year.




--
Samuel Wu

No comments: