2014-11-11 13 views
5

Sto provando a scorrere automaticamente la riga centrale nel libro degli ordini.Scorrere fino all'elemento e posizionarlo al centro della vista

Ho ordinato div, in quale tabella è inserito l'ordine. E una delle file di quella tabella ha un id middleRow. Quello che sto cercando di fare è scorrere e posizionare quella riga nel mezzo dell'ordine.

Risultato atteso è mostrato sulla foto:

enter image description here

ho tryied funzione jQuery scrollTo, ma mette fila centrale sulla parte superiore dello schermo, come illustrato di seguito:

$ ('# portafoglio ordini'). find ('tableBody '). scrollTo (' # orderBookMiddleRow')

enter image description here

risposta

9

http://demos.flesler.com/jquery/scrollTo/

È possibile specificare un offset per il vostro rotolo in questo modo:

$('#orderBook').find('.tableBody').scrollTo('#orderBookMiddleRow', 500, {offset: -$(window).height() /2}) 

Ecco davvero un semplice proof of concept: http://jsfiddle.net/6k8asog1/

Edit: Ecco il codice rivisto del PO per lo scorrimento al centro di #orderBook, invece della finestra:

$('#orderBook').find('.tableBody').scrollTo('#orderBookMiddleRow', 500, {offset: $('#orderBook').offset().top - $('#orderBook').height() - $('#orderBookMiddleRow').height() }) 
+0

non funziona come previsto ... Penso che l'offset sia impostato sull'altezza della finestra e l'ordine non sia sulla parte superiore della finestra –

+0

$ ('# orderBook'). Find ('. TableBody'). ScrollTo (' #orderBookMiddleRow ', 500, {offset: $ (' # orderBook '). offset(). top - $ (' # orderBook '). height() - $ (' # orderBookMiddleRow '). height()}) –

+1

sopra si lavora come previsto, si gioca solo con il codice pls corretto e segnerò come risolto –

Problemi correlati