Ir para conteúdo

POWERED BY:

Arquivado

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

Davi M.

Bug no slider

Recommended Posts

Olá, queria a ajuda de alguém para tentar resolver um bug no meu slider, acontece que aparentemente ele funciona normalmente, mas em algum momento quando volto para olhar-lo as vezes ele começa a trocar as imagens de forma muito rápida, tipo em um e um segundo, mas logo para e funciona normal. Não consegui descobrir o porque. Duvido que vocês vão ter tempo e paciência de ficar olhando para o slider para ver o erro, então queria que vocês apenas olhassem para os códigos do meus slider e me dissesse se tem algo que eu estou fazendo de errado ou que poderia fazer melhor, afim de não term mais chances do slider ter esse bug. Obrigado.

 

Código:

<html>
  <head>
    <title>Slider</title>
    <style>
      /* SLIDER */
      * {
        margin:0;
        padding:0;
      }

      .slides {
          width: 100%;
          height: 100%;
          z-index: 200;
          position: relative;
          border-bottom: ridge blue 5px;
        }

        #imagem1, #imagem2, #imagem3 {
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0px;
          z-index: 200;
        }

        #imagem2, #imagem3 {
          display: none;
        }

        #imagem1 {
          display: block;
        }

        /*Botões*/
       #B1, #B2, #B3 {
         z-index: 300;
         font-size: 50px;
       } 

       #B1v, #B2v, #B3v {
        z-index: 300;
        font-size: 50px;
       }

      #pausar1, #pausar2, #pausar3 {
        z-index: 300;
        font-size: 50px;
      }

      #continuar1, #continuar2, #continuar3 {
        z-index: 300;
        font-size: 50px;
        display: none;
      }

      .textoSlider {
        position: relative;
        top: -250px; 
        text-align: center;
        color: white;
        font-size: 30px;
        width: 80%;
        z-index: 300;
      }

      .saberMais {
        font-size: 20px;
        font-weight: bold;
        background-color: #00BFFF;
        width: 150px;
        padding-top: 10px;
        padding-bottom: 10px;
        border-radius: 5px;
        cursor: pointer;
        text-align: center;
        position: relative;
        bottom: 230px;
        z-index: 300;
      }

      .saberMais:hover {
        transform: scale(.9);
        transition: 1s;
        border-radius: 10px;
        background-color: #1E90FF;
      }

      .saberMais a:hover {
          color: orange;
      }

      .saberMais a {
          text-decoration: none;
          color: blue;
      }

      #controle {
          display: flex;
          justify-content: space-between;
      }

      .controleEstilo {
          width: 10%;
          height: 10%;
          margin: 10px;
          text-align: center;
          color: white;
          position: relative;
          bottom: 240px;
      }

      .controleEstilo:hover {
          color: #104af6;
          transition-duration: 1s;
      }

      .introducaoSlider {
          display: flex;
          justify-content: center;
      }

      .tituloSlider {
          font-size: 30px;
          color: red;
      }

      @media only screen and (max-width: 1100px) {
        .textoSlider {
            font-size: 20px;
            width: 95%;
        }
      }      
    </style>
  </head>
  <body>

    <!-- SLIDER -->
    <header>
      <ul>
        <li>
          <div id="imagem1">
              <img src="https://joaobidu.com.br/wp-content/uploads/2017/05/foto-de-lua-crescente-550x367.jpg" class="slides">
              <div class="introducaoSlider">
                <div class="textoSlider">
                  <div class="tituloSlider">Titulo 1</div>
                  <label>Texto, texto texto texto texto texto texto texto texto texto texto texto</label>
                  </div>
              </div>
              <div class="introducaoSlider">
                <div class="saberMais"><a href="#titulo1" class="scroll">Saber Mais</a></div>
              </div>
              <div id="controle">
                <div class="controleEstilo" id="B1v">&#65513;</div>
                <div class="controleEstilo" id="pausar1">&#10073;&#10073;</div>
                <div class="controleEstilo" id="continuar1">&#9655;</div>
                <div class="controleEstilo" id="B1">&#65515;</div>
              </div>
          </div>
        </li>

        <li>
          <div id="imagem2">
              <img src="http://conexaoplaneta.com.br/wp-content/uploads/2016/05/cultivando-fases-da-lua-800.jpg" class="slides">
              <div class="introducaoSlider">
                <div class="textoSlider">
                  <div class="tituloSlider">Titulo 2</div>
                  <label>Texto, texto texto texto texto texto texto texto texto texto texto texto</label>
                  </div>
              </div>
              <div class="introducaoSlider">
                <div class="saberMais" ><a href="#titulo2" class="scroll">Saber Mais</a></div>
              </div>
              <div id="controle">
                <div class="controleEstilo" id="B2v">&#65513;</div>
                <div class="controleEstilo" id="pausar2">&#10073;&#10073;</div>
                <div class="controleEstilo" id="continuar2">&#9655;</div>
                <div class="controleEstilo" id="B2">&#65515;</div>
              </div>
          </div>
        </li>

        <li>
          <div id="imagem3">
              <img src="https://abrilclaudia.files.wordpress.com/2017/11/lua_cheia.jpg" class="slides">
              <div class="introducaoSlider">
                <div class="textoSlider">
                  <div class="tituloSlider">Titulo 3</div>
                  <label>Texto, texto texto texto texto texto texto texto texto texto texto texto</label>
                  </div>
              </div>
              <div class="introducaoSlider">
                <div class="saberMais"><a href="#titulo3" class="scroll">Saber Mais</a></div>
              </div>
              <div id="controle">
                <div class="controleEstilo" id="B3v">&#65513;</div>
                <div class="controleEstilo" id="pausar3">&#10073;&#10073;</div>
                <div class="controleEstilo" id="continuar3">&#9655;</div>
                <div class="controleEstilo" id="B3">&#65515;</div>
              </div>
          </div>
        <li>
      </ul>
    </header>
    <script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
    <script>
      //SLIDER


      var counter = 0
      var timer = setInterval(function() {
       
       
        counter++
        console.log(counter)
       
        
        //Troca slider sozinho
        if (counter === 10) {
          $("#imagem1").fadeOut("slow")
          $("#imagem2").fadeIn("slow")
        } else if (counter === 20) {
          $("#imagem2").fadeOut("slow")
          $("#imagem3").fadeIn("slow")
        } else if (counter === 30) {
          $("#imagem3").fadeOut("slow")
          $("#imagem1").fadeIn("slow")
          //reset
        } else if (counter > 30) {
          counter = 0
        }

         //Pausar/Continuar slider 1
        $("#pausar1").click(function() {
          counter = Number.NEGATIVE_INFINITY
        })
        $("#continuar1").click(function(){
          counter = 0
        })

        //Pausar/Continuar slider 2
        $("#pausar2").click(function() {
          counter = Number.NEGATIVE_INFINITY
        })
        $("#continuar2").click(function(){
          counter = 10
        })

        //Pausar/Continuar slider 3
        $("#pausar3").click(function() {
          counter = Number.NEGATIVE_INFINITY
        })
        $("#continuar3").click(function(){
          counter = 20
        })

      }, 500);


      //variaves usadas para pausar/continuar slider
      let continuar1 = $("#continuar1")
      let continuar2 = $("#continuar2")
      let continuar3 = $("#continuar3")
      let pausar1 = $("#pausar1")
      let pausar2 = $("#pausar2")
      let pausar3 = $("#pausar3")


      //Se clicar em pausar1 slide, pausar1 some e aparece continuar1
      pausar1.click(function(){
          //pausar some
          $("#pausar1").css('display', 'none')
          //continuar aparece
          $("#continuar1").css('display', 'block')
        })
        
        //Se cliclar em continuar1, continuar1 some e aparece pausar1
        continuar1.click(function(){
          //continuar some
          $("#continuar1").css('display', 'none')
          //pausar aparece
          $("#pausar1").css('display', 'block')
        })

      //Se clicar em pausar2 slide, pausar2 some e aparece continuar2
      pausar2.click(function(){
          //pausar some
          $("#pausar2").css('display', 'none')
          //continuar aparece
          $("#continuar2").css('display', 'block')
        })
        
        //Se cliclar em continuar2, continuar2 some e aparece pausar2
        continuar2.click(function(){
          //continuar some
          $("#continuar2").css('display', 'none')
          //pausar aparece
          $("#pausar2").css('display', 'block')
        })
        
        //Se clicar em pausar3 slide, pausar3 some e aparece continuar3
      pausar3.click(function(){
          //pausar some
          $("#pausar3").css('display', 'none')
          //continuar aparece
          $("#continuar3").css('display', 'block')
        })
        
        //Se cliclar em continuar3, continuar3 some e aparece pausar3
        continuar3.click(function(){
          //continuar some
          $("#continuar3").css('display', 'none')
          //pausar aparece
          $("#pausar3").css('display', 'block')
        })
        

      //Avançar
      $("#B1").click(function() {
        counter = counter = 10
        $("#imagem1").fadeOut("slow")
        $("#imagem2").fadeIn("slow")
      })

      $("#B2").click(function() {
        counter = counter = 20 
        $("#imagem2").fadeOut("slow")
        $("#imagem3").fadeIn("slow")
      })

      $("#B3").click(function() {
        counter = counter = 30
        $("#imagem3").fadeOut("slow")
        $("#imagem1").fadeIn("slow")
      })

      //Voltar
      $("#B1v").click(function() {
        counter = counter = 20
        $("#imagem1").fadeOut("slow")
        $("#imagem3").fadeIn("slow")
      })

      $("#B3v").click(function() {
        counter = counter = 10
        $("#imagem3").fadeOut("slow")
        $("#imagem2").fadeIn("slow")
      })

      $("#B2v").click(function() {
        counter = counter = 0
        $("#imagem2").fadeOut("slow")
        $("#imagem1").fadeIn("slow")
      })


      //Para arruamar bug no firefox que não aceita height:100% no modo celular
      var firefox  = navigator.userAgent.indexOf('Firefox') > -1;
      if (window = firefox){
        alert("Firefox")
        if (window.innerWidth < 1000) {
          $(".slides").css('max-height', '580px')
          $("header").css('max-height', '580px')
          alert("1000")
        } 
      }    
    </script>
  </body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por violin101
      Caros amigos, saudações.

      Estou com uma dúvida, referente cálculo de valores em tempo real.

      Tenho uma rotina, que faz o cálculo, o problema é mostrar o resultado.

      Quero mostrar o RESULTADO assim: 0,00  ou  0.00

      Abaixo posto o código.
      jQuery('input').on('keyup',function(){ //Remover ponto e trocar a virgula por ponto var m = document.getElementById("pgRest").value; while (m.indexOf(".") >= 0) { m = m.replace(".", ""); } m = m.replace(",","."); //Remover ponto e trocar a virgula por ponto var j = document.getElementById("pgDsct").value; while (j.indexOf(".") >= 0) { j = j.replace(".", ""); } j = j.replace(",","."); m = parseFloat(jQuery('#pgRest').val() != '' ? jQuery('#pgRest').val() : 0); j = parseFloat(jQuery('#pgDsct').val() != '' ? jQuery('#pgDsct').val() : 0); //Mostra o Resultado em Tempo Real jQuery('#pgTroco').val(m - j); <<=== aqui estou errando })  
       
      Grato,
       
      Cesar
       
       
    • Por violin101
      Caro amigos, saudações.

      Tenho uma tabela escrita em JS que funciona corretamente.
       
      Minha dúvida:
      - como devo fazer para quando a Tabela HTML estiver vazia, exibir o LOGO da Empresa ?

      Abaixo posto o script:
      document.addEventListener( 'keydown', evt => { if (!evt.ctrlKey || evt.key !== 'i' ) return;// Não é Ctrl+A, portanto interrompemos o script evt.preventDefault(); //Chama a Função Calcular Qtde X Valor Venda calcvda(); var idProdutos = document.getElementById("idProdutos").value; var descricao = document.getElementById("descricao").value; var prd_unid = document.getElementById("prd_unid").value; var estoque_atual = document.getElementById("estoque_atual").value; var qtde = document.getElementById("qtde").value; var vlrunit = document.getElementById("vlrunit").value; var vlrtotals = document.getElementById("vlrtotal").value; var vlrtotal = vlrtotals.toLocaleString('pt-br', {minimumFractionDigits: 2}); if(validarConsumo(estoque_atual)){ //Chama a Modal com Alerta. $("#modal_qtdemaior").modal(); } else { if(qtde == "" || vlrunit == "" || vlrtotal == ""){ //Chama a Modal com Alerta. $("#modal_quantidade").modal(); } else { //Monta a Tabela com os Itens html = "<tr style='font-size:13px;'>"; html += "<td width='10%' height='10' style='text-align:center;'>"+ "<input type='hidden' name='id_prds[]' value='"+idProdutos+"'>"+idProdutos+"</td>"; html += "<td width='47%' height='10'>"+ "<input type='hidden' name='descricao[]' value='"+descricao+"'>"+descricao+ "<input type='hidden' name='esp[]' value='"+prd_unid+"'> - ESP:"+prd_unid+ "<input type='hidden' name='estoq[]' value='"+estoque_atual+"'></td>"; html += "<td width='10%' height='10' style='text-align:center;'>"+ "<input type='hidden' name='qtde[]' value='"+qtde+"'>"+qtde+"</td>"; html += "<td width='12%' height='10' style='text-align:right;'>"+ "<input type='hidden' name='vlrunit[]' value='"+vlrunit+"'>"+vlrunit+"</td>"; html += "<td width='14%' height='10' style='text-align:right;'>"+ "<input type='hidden' name='vlrtotal[]' value='"+vlrtotal+"'>"+vlrtotal+"</td>"; html += "<td width='12%' height='10' style='text-align:center;'>"+ "<button type='button' class='btn btn-uvas btn-remove-produto' style='margin-right:1%; padding:1px 3px; font-size:12px;' title='Remover Item da Lista'>"+ "<span class='fa fa-minus' style='font-size:12px;'></span></button></td>"; html += "</tr>"; $("#tbventas tbody").append(html); //Função para Somar os Itens do Lançamento somar(); $("#idProdutos").val(null); $("#descricao").val(null); $("#prd_unid").val(null); $("#qtde").val(null); $("#vlrunit").val(null); $("#vlrtotal").val(null); $("#idProdutos").focus(); //Se INCLUIR NOVO produto - Limpa a Forma de Pagamento $("#pgSoma").val(null); $("#pgRest").val(null); $("#pgDsct").val(null); $("#pgTroco").val(null); $("#tbpagar tbody").empty(); }//Fim do IF-qtde }//Fim do Validar Consumo });//Fim da Função btn-agregar  
      Grato,

      Cesar
       
    • Por violin101
      Caros amigos, saudações.

      Estou com uma pequena dúvida se é possível ser realizado.

      Preciso passar 2 IDs para o Sistema executar a função, estou utilizando desta forma e gostaria de saber como faço via JS para passar os parâmetro que preciso.

      Observação:
      Dentro da TABELA utilizei 2 Forms, para passar os IDS que preciso, funcionou conforme código abaixo.
      <div class="card-body"> <table id="tab_clie" class="table table-bordered table-hover"> <thead> <tr> <th style="text-align:center; width:10%;">Pedido Nº</th> <th style="text-align:center; width:10%;">Data Pedido</th> <th style="text-align:center; width:32%;">Fornecedor</th> <th style="text-align:center; width:10%;">Status</th> <th style="text-align:center; width:5%;">Ação</th> </tr> </thead> <tbody> <?php foreach ($results as $r) { $dta_ped = date(('d/m/Y'), strtotime($r->dataPedido)); switch ($r->pd_status) { case '1': $status = '&nbsp;&nbsp;Aberto&nbsp;&nbsp;'; $txt = '#FFFFFF'; //Cor: Branco $cor = '#000000'; //Cor: Preta break; case '2': $status = 'Atendido Total'; $txt = '#FFFFFF'; //Cor: Branco $cor = '#086108'; //Cor: Verde break; case '3': $status = 'Atendido Parcial'; $txt = '#000000'; //Cor: Branco $cor = '#FEA118'; //Cor: Amarelo break; default: $status = 'Cancelado'; $txt = '#FFFFFF'; //Cor: Branco $cor = '#D20101'; //Cor: Vermelho break; } echo '<tr>'; echo '<td width="10%" height="10" style="text-align:center;">'.$r->pd_numero.'</td>'; echo '<td width="10%" height="10" style="text-align:center;">'.$dta_ped.'</td>'; echo '<td width="32%" height="10" style="text-align:left;">'.$r->nome.'</td>'; echo '<td width="10%" height="10" style="text-align:left;"><span class="badge" style="color:'.$txt.'; background-color:'.$cor.'; border-color:'.$cor.'">'.$status.'</span></td>'; echo '<td width="5%" style="text-align:center;">'; ?> <div class="row"> <?php if($this->permission->checkPermission($this->session->userdata('permissao'), 'vPedido')){ ?> <form action="<?= base_url() ?>compras/pedidos/visualizar" method="POST" > <input type="hidden" name="idPedido" value="<?php echo $r->idPedidos; ?>"> <input type="hidden" name="nrPedido" value="<?php echo $r->pd_numero; ?>"> <button class="btn btn-warning" title="Visualizar" style="margin-left:50%; padding: 1px 3px;"><i class="fa fa-search icon-white"></i></button> </form> <?php } if($this->permission->checkPermission($this->session->userdata('permissao'), 'ePedido')){ ?> <form action="<?= base_url() ?>compras/pedidos/editar" method="POST" > <input type="hidden" name="idPedido" value="<?php echo $r->idPedidos; ?>"> <input type="hidden" name="nrPedido" value="<?php echo $r->pd_numero; ?>"> <button class="btn btn-primary" title="Editar" style="margin-left:50%; padding: 1px 3px;"><i class="fa fa-edit icon-white"></i></button> </form> <?php } ?> </div> <?php echo '</td>'; echo '</tr>'; } ?> </tbody> </table> </div>
      Grato,

      Cesar.
    • Por belann
      Olá!
       
      Estou usando o editor quill em uma página html, sem fazer a instalação com npm, mas usando as api´s via internet com http, no entanto não consigo fazer a tecla enter funcionar para mudança de linha, tentei essa configuração abaixo, mas não funcionou.
       
      modules: {       syntax: true,       toolbar: '#toolbar-container',       keyboard: {         bindings: {           enter: {             key: 13,             handler: function(range, context) {                       quill.formatLine(range.index, range.length, { 'align': '' });             }           }  
       
    • Por violin101
      Caros amigos, saudações.
       
      Gostaria de poder tirar uma dúvida com os amigos.
       
      Como faço uma função para Comparar a Data Digitada pelo o Usuário com a Data Atual ?

      Data Digitada:  01/09/2024
       
      Exemplo:
      25/09/2024 é menor que DATA Atual  ====> mensagem: informe uma data válida.
      25/09/2024 é igual DATA Atual ===> o sistema libera os INPUT's.
       
      Como faço uma comparação com a Data Atual, para não Deixar Gravar Data retroativa a data Atual.
       
      Grato,
       
      Cesar
×

Informação importante

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