Lâmpada de lava JQuery:Selecionando item de foco/destaque dentro do lavalamp quando hiperlinks fora da barra do lavalamp são pressionados

StackOverflow https://stackoverflow.com/questions/3314116

  •  27-09-2020
  •  | 
  •  

Pergunta

Olá, espero que alguém possa me ajudar com um problema do jQuery lavalamp.

Eu tenho o seguinte - uma barra de menus usando o Lavalamp.-

A barra de menu em si parece e funciona muito bem.No entanto, não quero poder focar/destacar o item de menu correspondente "Opção de menu" quando um usuário clica em um dos links em meu div de conteúdo.

POR EXEMPLO

<div><ul class="lavalamp">
  <li><a href="Item 1.html">item 1</a></li>
  <li><a href="Item 2.html">item 2</a></li>
  <li><a href="Item 3.html">item 3</a></li>
 </div>

<div id="dynamic-content">
   <a href="Item3.html">Item 3.html</a>
</div>

Quando o usuário clica no item 3 da div de conteúdo dinâmico, a seleção no lavalamp deve mudar.

Alguém tem alguma experiência com isto?

Obrigado

Foi útil?

Solução

Não sei qual jQuery lavaLamp você está usando.Se você estiver usando Este, use a resposta do SimpleCoder.Se você estiver usando Este, tente isto:

    $(function() {
        var loc = window.location.href;
        var filename = loc.substring(loc.lastIndexOf('/')+1, loc.length);

         $('.lavalamp a, #dynamic-content a').each(function(){
            if ($(this).attr('href') == filename){
               $(this).parent().addClass('current');
            }
         });

        $(".lavalamp").lavaLamp({
            fx: "backout",
            speed: 700
         })
    });

Outras dicas

Para alterar a seleção no lavalamp, redefina o lavalamp usando o lavaLamp() função passando um startItem parâmetro:

$('#myLavalamp').lavaLamp({startItem: 4});

Observe que a numeração começa em 0 para elementos.Além disso, você terá que incluir todas as outras opções usadas para inicializar o lavalamp originalmente.

    $(function() {
    var loc = window.location.href;
    var filename = loc.substring(loc.lastIndexOf('/')+1, loc.length);

     $('#2 a, #dynamic-content a').each(function(){
        if ($(this).attr('href').indexOf(filename)>-1){
           $(this).parent().addClass('current');
        }
     });

    $("#2").lavaLamp({
        fx: "backout",
        speed: 700
     })
});
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top