boas pessoal!

Eu já tinha colocado aqui, um suggest jQuery com ajax. Pensando como eu poderia deixar o usuário se movimentar pela lista de suggest, usando as setas do teclado, me dei conta que era desnecessário, tentar ficar trocando o .focus() dos elementos.

Na verdade, eu só preciso ‘fingir’ isso. Mostrar no input, o .text(), do item do suggest, e mostrar com um background em qual está.

Foi oq eu fiz. Bem simples.

<html>
<head>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript">
jQuery(document).ready(function(){
	var active = -1;
	jQuery("input[name='autocomplete']").keypress(function( event ){		
		var suggest_a = jQuery('#suggest a');
		var qnts_a = suggest_a.length;
			
		if( 40==event.keyCode )//seta baixo
			active = active>=(qnts_a-1) ? 0 : active+1;
		else if( 38==event.keyCode )//seta cima
			active = ( active<=0 ) ? qnts_a-1 : active-1;
		
		
		
		var a = suggest_a.removeClass('active').eq( active ).addClass('active');	
		jQuery( this ).val( a.text() );
	});
});
</script>
<style type="text/css">
label { position: relative; }
#suggest {
	position: absolute;
	top: 20px;
	left: 0;
}
.active {
	background: #ccc;
}
</style>
</head>
<body>
	<label>
		<input type="text" name="autocomplete" />
		<ul id="suggest">
			<li><a href="">Item 1</a></li>
			<li><a href="">Item 2</a></li>
			<li><a href="">Item 3</a></li>
			<li><a href="">Item 4</a></li>
		</ul><!-- /suggest -->
	</label>
</body>
</html>

</html>

e vc? faria de outro jeito ?

ainda vou pesquisar para ver como ‘costumam fazer por ai’. Essa foi a forma que eu pensei para resolver.