jquery/javascript: caixa suspensa no lugar errado

Eu recebi ajuda mais cedo para o posicionamento se a minha caixa de jquery, mas não era universal e eu não entendo muito bem. O código move minha caixa suspensa para expandir para a direita, mas agora que mudei a posição dos links, a caixa não está mais alinhada corretamente. Aqui está o novo código:

$('.menu ul li:has("ul")').each(function(){
   var nameWidth = $(this).outerWidth(),
       dropdownWidth = $(this).find('ul').width(),
       change = (dropdownWidth - nameWidth) - 10;
    $(this).find('ul').css('left', change+'px');

Here's my entire code http://jsfiddle.net/rKaPN/30/

0

1 Respostas

Em seu CSS você pode alterar o seguinte:

.menu ul li ul{
   position:absolute;
   right: 0px; //Add this  
  //Rest of your css
}

Ele alinhará o menu suspenso à direita, exatamente como você fez anteriormente, sem usar o loop de cada um que você descreveu. No entanto, o seu loop também se torna funcional quando você simplesmente define a propriedade esquerda:

.menu ul li ul{
    position:absolute;
    left: 0px; //Add this  
   //Rest of your css
}
1
adicionado
JavaScript Brasil OFICIAL
JavaScript Brasil OFICIAL
4 138 dos participantes

Grupo sobre JavaScript do Brasil