Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/03/2012, 12:24
opzina
 
Fecha de Ingreso: marzo-2008
Mensajes: 1.020
Antigüedad: 16 años, 1 mes
Puntos: 21
(Consulta) Cargar contenido una sla vez y de un solo item

Tengo las letras del abcdario o alfabeto.

Al hacer click en una de ellas, me debe mostrar un listado de palabras.

Cuando sucede el primer evento click funciona adecuadamente.
Ej. click en letra a, muestra 'Asc', 'After', 'Asns'.

Aunque si luego hago click en B, me muestra las letras de A y se agregan las de B. Este comportamiento quiero evitar.

Necesito que al hacer click en A muestra letras de A, Al hacer click en B, muestre las de B.

Como aplico esta restricción?

Código HTML:
Ver original
  1. <ul class="abc">
  2.                     <li><a rel="0" href="#">A</a></li>
  3.                     <li><a rel="1" href="#">B</a></li>
  4.                     <li><a rel="2" href="#">C</a></li>
  5. </ul>


Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.     $(document).ready(function() {
  3.        
  4.         var words = [
  5.                 a = ['Asc', 'After', 'Asns'],
  6.                 b = ['Basic'],
  7.                 c = ['Calc', 'Composite']
  8.             ];    
  9.        
  10.         var destino = $('#words ul');
  11.         var lista = $('.abc li');
  12.        
  13.         lista.click(function(event) {    
  14.             event.preventDefault();
  15.            
  16.             //Add and remove "active" css class.
  17.             $(this).addClass('active').siblings().removeClass('active');
  18.            
  19.             // Get rel atribute value.
  20.             var abc = $(this).children().attr('rel');
  21.            
  22.             $(this).each(function() {
  23.                 for(var i = 0; i < words.length; i++) {
  24.                     if(abc == i) {
  25.                         for(var word = 0; word < words[i].length; word++) {
  26.                             destino.append('<li><a href="#">' + words[i][word] + '</a></li>');
  27.                         }
  28.                     }
  29.                 }
  30.  
  31.             });
  32.         });
  33.  
  34.     });
  35. </script>
__________________
_