Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

marcelocardoso

transpor simples código javascript para JQUERY

Recommended Posts

pessoal.
simples, como poderia transpor este código de JS para JQUERY?
 

function openNav() {
document.getElementById("navbar_myside").style.width = "100px";
document.getElementById("wrapper").style.marginLeft = "100px";
//document.body.style.backgroundColor = "rgba(0,0,0,0.4)";
}

function closeNav() {
document.getElementById("navbar_myside").style.width = "0";
document.getElementById("wrapper").style.marginLeft = "0";
//document.body.style.backgroundColor = "white";
}

mais incluindo este abaixo:
1) se clicado, muda o atributo de OPENNAV para CLOSENAV?
2) e ao contrário, de CLOSENAV para OPENNAV, usando IF ELSE para os dois.

Tentei assim, mas não foi...
 

clicked = true;
            $("btn_open").click(function() {
                if(clicked){
                    $(this).attr("onclick","closeNav()");
                    clicked  = false;
                } else {
                    $(this).attr("onclick","openNav()");
                    clicked  = true;
                } 
            });
            
            function openNav() {
                document.getElementById("navbar_myside").style.width = "100px";
                document.getElementById("wrapper").style.marginLeft = "100px";
                //document.body.style.backgroundColor = "rgba(0,0,0,0.4)";
            }

            function closeNav() {
                document.getElementById("navbar_myside").style.width = "0";
                document.getElementById("wrapper").style.marginLeft = "0";
                //document.body.style.backgroundColor = "white";
            }

obrigado.
 

Compartilhar este post


Link para o post
Compartilhar em outros sites
  //Troque o texto com aspas pelo nome da função apenas.
			$("btn_open").click(function() {
                if(clicked){
                    $(this).attr("onclick",closeNav);
                    clicked  = false;
                } else {
                    $(this).attr("onclick",openNav);
                    clicked  = true;
                } 
            });

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não faz sentido nenhum você alterar o atributo onclick. 
O que você pretende com esse código?

Compartilhar este post


Link para o post
Compartilhar em outros sites

segue bruno...

1) abrir navbar a esquerda:
 

<div class="navbar-header">
  <button id="btn_toggle" type="button" class="navbar-toggle collapsed fa fa-bars" data-toggle="collapse"></button>
  <!--<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar">-->
  <a class="navbar-brand" href="#">
    <img src="../site/img/logotipo_branco.png" class="img-responsive">
  </a>
</div>

2) javascript
 

function openNav() {
    document.getElementById("navbar_myside").style.width = "100px";
    document.getElementById("wrapper").style.marginLeft = "100px";
}

function closeNav() {
    document.getElementById("navbar_myside").style.width = "0";
    document.getElementById("wrapper").style.marginLeft = "0";
}

3) seria transpor este iten 2, em JQUERY.
     a) 1 - teria que ao abrir o OPENNAV, já mudar o botão lá do item 1, para CLOSENAV.

     b) assim, no mesmo botão BARS, ele abre e fecha...

não sei se entendeu...
obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

RESUMINDO TUDO:
 

1) Tenho este button, na NAVBAR:
 

<button type="button" class="navbar-toggle collapsed fa fa-bars" onclick="openNav()"></button>

Ele chama a função OPENNAV

2) ele chama esta função, que gostaria de transpor para JQ, pois está em JAVASCRIPT
 

            function openNav() {
                document.getElementById("navbar_myside").style.width = "100px";
            }

            function closeNav() {
                document.getElementById("navbar_myside").style.width = "0";
            }

3) Após pegar a função e adaptar para JQUERY, gostaria dentro da função JQUERY, lá no item 1, mudar o ONCLICK OPENNAV para CLOSENAV, sem mudar o BOTAO, apenas o onclick, assim aproveito o mesmo botão para FECHAR e ABRIR a NAVBAR_MYSIDE da função.

Entenderam agora....
Se puderem ajudar, agradeço...
Olhei bastante códigos exemplos na internet, tentei adaptar, mas nada....
Obrigado.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, após muitas tentativas...
Desde já agradeço as visualizações, mas consegui sozinho, estudando e estudando meu caso.
consegui resolver assim, segue para conhecimento de outros.

 

<script type="text/javascript">
  //CODE - navbar e sidebar collapse
  $(function() {
    $('#nav-open').on('click', function() {
      $('#navbar_myside').css('width','100px');
      $('#nav-open').hide();
      $('#nav-close').show();
    });
  });

  $(function() {
    $('#nav-close').on('click', function() {
      $('#navbar_myside').css('width','0px');
      $('#nav-close').hide();
      $('#nav-open').show();
    });
  });
</script>

Obrigado.... até...

Compartilhar este post


Link para o post
Compartilhar em outros sites

postei o código acima, funciona, mas ainda tem erro...
quando fica no dispositivo mobile, depois se expand o navegador, ainda continua a barra...
o ideal após sair dos 480pixels, deveria sumir...

EXEMPLOS, agradeceria para implementar aqui...
Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Pessoal, pergunta bem simples. Abaixo tenho o seguinte código:
       
      <script>
      function alerta()
      {
        if (window.confirm("Você realmente quer sair?")) {
          window.open("sair.html");
      }
      }
      </script>
       
      Funciona perfeitamente, só que está abrindo em outra janela e quero que abra na mesma janela.
       
      Alguém pode me ajudar?
    • Por Giovanird
      Olá a todos!
      Tenho uma pagina que possui uma DIV onde coloquei uma pagina PHP.
      Uso a função setInterval para atualizar a pagina inclusa dentro da DIV.
      O problema é que ao acessar o site , a DIV só me mostra a pagina inclusa somente quando completo o primeiro minuto.
      Preciso que a pagina inclusa já inicie carregada
       
      Meu código JavaScript e a DIV com a pagina PHP
       
      <script> function atualiza(){ var url = 'direita.php'; $.get(url, function(dataReturn) { $('#direita').html(dataReturn); }); } setInterval("atualiza()",60000); </script> <div> <span id="direita"></span> </div>  
    • Por Thiago Duarte
      Oi, gostaria de arrastar imagem e ao soltar formar bloco html, meu bloco de html ficaria com nome, content-1.html, content-2.html, etc
       
      Alguem pode me ajudar?
    • Por belann
      Olá!
       
      Estou fazendo o upload de arquivos com fetch dessa forma
      fetch(url, {
              method: 'POST',
              headers: {'Content-Type': 'multipart/form-data',},
              body: formData 
          }).catch((error) => (console.log("Problemas com o Upload"), error));
       
      estou usando input type=file
      e criando uma const formData = new FormData(); 
      mas não faz e não dá nenhum erro.
      estou fazendo o upload com a url="http://localhost/dashboard/dados".
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.