Come posso fare in modo che l’elemento selezionato in elenco venga spostato verso l’alto?

Sto creando un semplice elenco di elementi dell’array. Le barre di scorrimento appariranno se la lista è grande. Tuttavia, la mia domanda è: quando un object è selezionato, mi piacerebbe vedere quell’elemento in cima alla posizione visibile, spingendo tutti gli elementi sopra nascosti sopra sotto la barra di scorrimento. Quindi non importa quale elemento I seleziono, dovrebbe essere in cima alla casella di riepilogo visibile. Non è come posizionare l’object in alto, solo sulla parte superiore a scorrimento. Spero che la mia domanda sia compresa qui.

Grazie per qualsiasi aiuto o direzione che posso ottenere.

Puoi usare questo codice:

$('#scrollable li').on('click', function(e){ $('#scrollable').animate({scrollTop: $(e.target).position().top + $('#scrollable').scrollTop()}); }); 

Vedi anche questo JSFiddle: http://jsfiddle.net/729nX/1/

dopo molto googlando, ho scoperto che puoi usare scrollTo () usando javascript con un codice simile a questo

 function scrollToElem(elem) { if(pageElement != null){ window.scrollTo(elem.offsetTop, 0); } } var elem= document.getElementById('your_element'); scrollToElem(elem); 

o usa use location.hash che mi sembra la soluzione più semplice con qualcosa da solo le linee di

 location.hash = '#' + 'your_element'; 

nel caso in cui tu abbia una barra di scorrimento in un elemento invece dell’intera finestra.

Element.scrollTop – MDN

Element.scrollTop – W3 school

 function onSelect(list, selectedItem){ list.scrollTop = selectedItem.offsetTop - list.offsetTop; }