Ir para conteúdo

POWERED BY:

Arquivado

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

dmelo

Ignorar a Posição do Mouse

Recommended Posts

Eu tenho um script   $('.btn').click();   mas ele só funciona se eu deixar o mouse em cima do elemento.

Como fazer pra ele funcionar ignorando a posião do mouse?

Agradeço muito quem puder me ajudar pois já procurei em vários fóruns mas não achei a solução.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deixa eu ver se intendi, você está afirmando que para o click acontecer é necessário o ponteiro do mouse estar em cima do .btn, já verificou se não há algo faltando?


 

$(function(){

     $(".btn").click();

});

ou

function minhaFuncaoQueVaiClicar(){

     $(".btn").click();

}

minhaFuncaoQueVaiClicar();

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
9 horas atrás, dmelo disse:

Eu tenho um script   $('.btn').click();   mas ele só funciona se eu deixar o mouse em cima do elemento.

Como fazer pra ele funcionar ignorando a posião do mouse?

Agradeço muito quem puder me ajudar pois já procurei em vários fóruns mas não achei a solução.

Ignorar como? Se voce quer q a função realize apenas com o click do mouse em qualquer lugar da sua pagina, experimentar colocar essa função no body

 

<body onclick="funcaoclick()">

....

</body>

Compartilhar este post


Link para o post
Compartilhar em outros sites
11 horas atrás, quimera disse:

Deixa eu ver se intendi, você está afirmando que para o click acontecer é necessário o ponteiro do mouse estar em cima do .btn, já verificou se não há algo faltando?

 


$(function(){

     $(".btn").click();

});

ou


function minhaFuncaoQueVaiClicar(){

     $(".btn").click();

}

minhaFuncaoQueVaiClicar();

 

 

Muito obrigado por me responder mas ainda não funciona. Tentei as 2 formas que você me sugeriu.

 

 

 

4 horas atrás, Ted2370 disse:

Ignorar como? Se voce quer q a função realize apenas com o click do mouse em qualquer lugar da sua pagina, experimentar colocar essa função no body

 

<body onclick="funcaoclick()">

....

</body>

 

Muito obrigado, mas o meu click é automático.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro @dmelo esse negócio de forçar click em um elemento "viola em muito as boas práticas da web".

Mas sim é "possível" desde que não viole as diretrizes dos software anti-vírus/spyware do usuário.

Se as definições vem de jQuery já adiciona um alerta messes softwares que o usuário possa ter.

Se explicar direito como e quando isso deve acontecer posso mostrar para você um exemplo.

Lembre-se que o javascrirpt é executado na máquina do usuário. E jQuery (É BOSTA INÚTIL) que dar atalhos sem necessidade as funções nativas do javascript.

 

 

No mais pelo que entendi é atrelar ao documento o evento click e esse ouvinte irá buscar o classificador btn, quando ele a disparar o evento irá executar uma ação....

Entre mais um classificador não seria a questão inicial e sim um identificador, mas isso depende das questões do que fazer, dependeria o que realmente vai fazer, depende do que realmente precisa pela sua questão que ficou mau explicada...

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 horas atrás, Omar~ disse:

Caro @dmelo esse negócio de forçar click em um elemento "viola em muito as boas práticas da web".

Mas sim é "possível" desde que não viole as diretrizes dos software anti-vírus/spyware do usuário.

Se as definições vem de jQuery já adiciona um alerta messes softwares que o usuário possa ter.

Se explicar direito como e quando isso deve acontecer posso mostrar para você um exemplo.

Lembre-se que o javascrirpt é executado na máquina do usuário. E jQuery (É BOSTA INÚTIL) que dar atalhos sem necessidade as funções nativas do javascript.

 

 

No mais pelo que entendi é atrelar ao documento o evento click e esse ouvinte irá buscar o classificador btn, quando ele a disparar o evento irá executar uma ação....

Entre mais um classificador não seria a questão inicial e sim um identificador, mas isso depende das questões do que fazer, dependeria o que realmente vai fazer, depende do que realmente precisa pela sua questão que ficou mau explicada...

 

Bom dia! Muito obrigado por me responder. Vou explicar melhor. O script será executado somente na minha máquina. Tem um site de ver anúncios que eu automatizei a visualização dos anúncios, mas o inconviniente é ter que deixar o meu mouse em cima do captcha pra o script funcionar.

Compartilhar este post


Link para o post
Compartilhar em outros sites
13 horas atrás, dmelo disse:

mas o inconviniente é ter que deixar o meu mouse em cima do captcha pra o script funcionar.

Ah sim, então as questão não é o click e sim a posição do ponteiro do mouse.

Isso pode ser que não vai dar para contornar, porque nessa situação a exibição do suposto anúncio + um script captcha.

 

No entanto podemos tentar enganar o script dizendo que o mouse está em cima sem mesmo ele está lá.

Spoiler

<style>
  #ativar_funcao {
    background: red;
    height: 200px;
    width: 200px
  }
</style>

<div id="ativar_funcao">
  Coloque o cursor em cima de mim
</div>

<script>
  var ativar = document.getElementById('ativar_funcao');
  ativar.addEventListener('mouseover', ficaAzul, false); // Mouse Está em cima
  ativar.addEventListener('mouseleave', ficaVerde, false); // Mouse saíu de cima

  function ficaAzul(e) {
    window.ativar.style.background = 'blue';
  }
          
  function ficaVerde(e) {
    window.ativar.style.background = 'green';
  }
</script>

 

Certo com esse exemplo podemos ver que temo algo sendo feito quando o cursor vai em cima do elemento e algo quando ele sai, acredito que essa seja a raiz da questão, pois como você diz o mouse tem que está em cima.

O que vamos fazer é detectar um click e dizer que o mouse está em cima sem mesmo está. Usando um despachante de eventos .

 

Spoiler

<div id="ativar_funcao">
  Coloque o cursor em cima de mim
</div>

<div class="btn">
  clique em cima de mim e o evento que não me pertence será tivado
</div>

<div class="nao_btn">
  Eu não sou btn
</div>

<script>
  var ativar = document.getElementById('ativar_funcao');
  ativar.addEventListener('mouseover', ficaAzul, false); // Mouse Está em cima
  ativar.addEventListener('mouseleave', ficaVerde, false); // Mouse saíu de cima

  function ficaAzul(e) {
    window.ativar.style.background = 'blue';
  }
          
  function ficaVerde(e) {
    window.ativar.style.background = 'green';
  }
  
  document.addEventListener('click', falsificarCursor, false);
  function falsificarCursor(e) {
    var evento = new Event('mouseover');
    if (e.target.classList.contains('btn')) {
      window.ativar.dispatchEvent(evento);
    }
  }
</script>
  

 

 

Com esse  exemplo temos um evento ouvinte click que é o documento se esse clique é em cima de um elemento cujo possua um classificador .btn, o evento é disparado e outro despachado sendo que o alvo é o elemento que o cursor deve está em cima, assim sendo ele diz que o mouse está em cima sem mesmo nunca teve estado.

 

Bom acho que é isso, caso não tente localizar qual é o evento ouvinte do captcha do tal anúncio despache da mesma forma o evento de ativação em cima dele.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro @Omar~ desculpe mas não funcionou. Abaixo está o código original do site que estou usando pra ver anúncios e que automatizei a visualização dos anúncios, mas o inconviniente é ter que deixar o meu mouse em cima do captcha pra o script funcionar.

 

Meu script:

setInterval(function(){$('.captcha-image')[2].click();}, 4000);

 

Código do site:

<div class="captcha-holder captcha-theme-light" style="font-family: Arial,sans-serif;" data-captcha-id="0">

<div class="captcha-modal">

<div class="captcha-modal__header"><span>Select the image that does not belong in the row</span></div>

<div class="captcha-modal__icons">
<div class="captcha-image" style="background-image: url(&quot;system/libs/captcha/request.php?cid=0&amp;hash=90c848a48b341a2e741de20d3abcbb6b82b0091c21e1c11c&quot;);" icon-hash="90c848a48b341a2e741de20d3abcbb6b82b0091c21e1c11c"></div>
<div class="captcha-image" style="background-image: url(&quot;system/libs/captcha/request.php?cid=0&amp;hash=62881f446a8e6a79b3ada88ff893cfed781556569e502e1a&quot;);" icon-hash="62881f446a8e6a79b3ada88ff893cfed781556569e502e1a"></div>
<div class="captcha-image" style="background-image: url(&quot;system/libs/captcha/request.php?cid=0&amp;hash=4cfa18798f079576578493508ebbaf5bc4e77f41629c5fb4&quot;);" icon-hash="4cfa18798f079576578493508ebbaf5bc4e77f41629c5fb4"></div>
<div class="captcha-image" style="background-image: url(&quot;system/libs/captcha/request.php?cid=0&amp;hash=c0596aab0225b0be1bb029601a4e359775c7e870169518ff&quot;);" icon-hash="c0596aab0225b0be1bb029601a4e359775c7e870169518ff"></div>
<div class="captcha-image" style="background-image: url(&quot;system/libs/captcha/request.php?cid=0&amp;hash=fbb239b7c29eb8743d072a56f34e5438ec60c013c1ed5330&quot;);" icon-hash="fbb239b7c29eb8743d072a56f34e5438ec60c013c1ed5330"></div></div>

<input name="captcha-hf" required="" type="hidden">

<input name="captcha-idhf" value="0" required="" type="hidden"></div></div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por luiz monteiro
      Olá.
      Estou atualizando meu conhecimento com Front-End e me deparei com o seguinte problema.
      Criei um sistema para fazer o upload de imagens e alguns campos text.
      Algo bem simples para depois começar a estudar javascript para mostrar a miniatura....
      Mas quando saio do navegador Chrome ou da aba por mais de 3 minutos, ao retornar o navegador as vezes atualiza ou nem chega atualizar mas limpa os campos.
      Estou usando um Smart Motorola com Android, mas um amigo testou no iPhone e acontece a mesma coisa.
      Gostaria de saber se há como usar javascript para evitar isso?
      Agradeço desde já.

      <!DOCTYPE html>
      <html>
      <head>
          <meta charset="utf-8">
          <meta name="viewport" content="width=device-width, initial-scale=1">
          <title>Uploader</title>
      </head>
      <body>
          <form action="?" method="post" enctype="multipart/form-data">
              <br><br>
              <div>selecione a imagem 1</div>
              <input type="file" name="foto1" accept="image/*">
              <br><br>
              <input type="text" name="nome_imagem1">
              
              <br><br>
              <input type="file" name="foto2" accept="image/*">
              <br><br>
              <input type="text" name="nome_imagem2">
              
              <br><br>

              <input type="file" name="foto3" accept="image/*">
              <br><br>
              <input type="text" name="nome_imagem3">
              
              <br><br>
              <input type="submit" value="Enviar">
              <br><br>
          </form>
      <?php
      if ($_SERVER['REQUEST_METHOD'] == 'POST')
      {
          vardump ($_FILES);
      }
      ?>
      </body>
      </html>
       
       
       
    • Por belann
      Olá!
       
      Estou usando o nextjs versão 15.2.3 e criei uma navbar que quando é carregado o programa aparece com a home, mas na hora de clicar na página produtos desaparece a navbar.
      A navbar esta sendo chamada no layout.tsx estou usando typescript
      e fica dessa forma
      <div>           <Navbar/>             <main>{children}</main>             </div>  
    • 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.
×

Informação importante

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