Ciao amici,

in un precedente thread avevo posto una domanda a proposito dei selettori di classe che pareva non funzionassero.
Alla fine ho semplicemente delegato l'evento click, senza usare il metodo ONE:
codice:
jQuery('ul').on('click', '> li.klass', function() { ...
Ora ho un altro problema.

Dunque, il mio menu, che è multilivello, è una cosa di questo tipo:
codice:
<ul id="ul1">
    <li id="li1" class="klass">
       <ul id="ul2">
          <li id="li2"class="klass">
             <ul>
                <li class="klass"></li>
                <li class="klass">
                   <ul>
                      <li class="klass"></li>
                   </ul>
                </li>
             </ul>
          </li>
          <li class="klass"></li>
       </ul>
    </li>
    <li class="klass">
       <ul>
          <li class="klass"></li>
          <li class="klass"></li>
       </ul>
    </li>
 </ul>
Succede che all'apertura di un LI di primo livello il comportamento sia quello che mi aspetto, cioè che l'elemento su cui faccio click sia il UL principale e l'elemento delegato sia il LI sotto il mio puntatore del mouse.

Ma cosa succede se clicco un LI di secondo livello? L'elemento su cui agisce jQuery, basandosi sull'istruzione che ho scritto in alto, è ancora il UL di primo livello.
Cioè, se clicco su li1 il UL padre che viene correttamente considerato è ul1; ma se clicco su li2 vorrei che il UL corrispondente fosse ul2, invece è sempre ul1.

Come risolvo?