Ir ao conteúdo
  • Cadastre-se

GabrielSennaMs

Membro Pleno
  • Posts

    335
  • Cadastrado em

  • Última visita

Tudo que GabrielSennaMs postou

  1. @thefill Bom presumindo que você já tenha algum conhecimento com React, você pode começar tentando consumir essa API.
  2. @Murilown Para resolver esse problema você deve usar o Ajax, aqui tem um tutorial falando sobre. https://www.w3schools.com/js/js_ajax_intro.asp
  3. @bigbossbr Você pode disparar o evento usando o método "dispatchEvent", com algumas modificações no seu código é possível fazer isso. for (let index in mapaTeclado) { document.getElementById(mapaTeclado[index]) .addEventListener("mouseover", (event) => { event.target.style.background = '#e4e4e4' }); document.getElementById(mapaTeclado[index]) .addEventListener("mouseout", (event) => setTimeout( () => event.target.style.background = '#000', 400 )); } const mapearTeclado = (evento) => { let tecla = evento.key; let teclaPermitida = () => Object.keys(mapaTeclado).indexOf(tecla) !== -1; if (teclaPermitida()) { let event = new MouseEvent('mouseover'), event_2 = new MouseEvent('mouseout'); document.getElementById(mapaTeclado[tecla]).click(); document.getElementById(mapaTeclado[tecla]).dispatchEvent(event); document.getElementById(mapaTeclado[tecla]).dispatchEvent(event_2); } } Infelizmente você não vai poder usar o efeito de houver do CSS, porém é possível aplicar a propriedade transition, deixa um efeito maneiro. .calculator button{ background-color: black; color: white; padding: 20px; border-radius: 5px; font-size: 1.5rem; outline: none; cursor: pointer; border: 2px solid black; box-shadow: 2px 2px 0px #555; transition: 0.4s; } button:hover{ transition: 0.4s; background-color: #e4e4e4; color: black; box-shadow: inset 2px 2px 0px #555; border: 0; }
  4. @bianca oliveira O problema é bem simples! Quando você clicka no input com o tipo(type) submit, que está dentro do elemento form, ele executa o evento de submit do elemento form, dessa forma ele redireciona a página para a action do elemento form, nesse caso é o "login.html", e não executa o seu script em javascript. Você pode modificar esse input para o tipo button e isso deve resolver o seu problema. <form class="conta" action="login.html" method="POST"> <h1>Primeiro acesso?</h1> <input type="button" value="Redirecionar" onclick="redirecionar()" /> </form> <script type="text/javascript"> function redirecionar() { window.location.href = "/url"; } </script> Você também pode usar um elemento "a" ao invés do botão com script. Vou colocar algumas alternativas que você pode usar. <a href="/url"></a> <button type="button" onclick="redirecionar()">Redirecionar</button> // ou <button type="button" onclick="window.location.href = '/url'">Redirecionar</button>
  5. @bigbossbr No código que eu passei tem no seu não Se você escrever na tela o endereço do arquivo vai ficar assim. "home/home.php" No seu código que está sem o ponto, e está saindo assim "home/homephp" O ponto que eu falo não é dá concatenação e sim da string "php", assim, ".php";
  6. @bigbossbr Você poderia usar uma estrutura de map para configurar a suas rotas. olhando os Métodos "file_exists", você está passando o nome do arquivo errado, nesse caso sem o ponto entre o nome do arquivo e sua extensão. Ele está procurado algo como "home/homephp" e não "home/home.php". Para resolver isso basta adicionar um .(ponto) antes do 'php'. $SERVER = ($_SERVER ?? null); $REQUEST_URI = filter_input(INPUT_SERVER, 'REQUEST_URI'); $INITE = strpos($REQUEST_URI, '?'); $DIR_BASE = 'new_site'; $FIRST_DIR = 'home/'; if ($INITE) : $REQUEST_URI = substr($REQUEST_URI, 0, $INITE); endif; $REQUEST_URI_PASTA = substr($REQUEST_URI, 1); $URL = explode('/', $REQUEST_URI_PASTA); $URL[0] = ($URL[0] != '' ? $URL[0] : 'home'); if (file_exists($FIRST_DIR . $URL[0] . '.php')) : require($FIRST_DIR . $URL[0] . '.php'); echo $URL[0]; elseif (is_dir($FIRST_DIR . $URL[0])) : if (isset($URL[1]) && file_exists($FIRST_DIR . $URL[0] . '/' . $URL[1] . '.php')) : require($FIRST_DIR . $URL[1] . '.php'); echo $URL[0]; endif; else : require($FIRST_DIR . '404.php'); echo $URL[0]; endif;
  7. @bigbossbr Teria como você mostra as classes do css "fixed-nav" e "static-nav"?
  8. @bigbossbr Bom amigo teria como informa com mais detalhes o que você desseja fazer, e se possivel passar o html e css. O código está funcionado sem prolema, eu fiz o teste aqui. <!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script> $(function () { $(window).scroll(function () { if ($(this).scrollTop() > $('#barra').offset().top) { $('#teste').removeClass('fixed-nav'); $('#teste').addClass('static-nav'); } else { $('#teste').removeClass('static-nav'); $('#teste').addClass('fixed-nav'); } }); }) </script> <style> .fixed-nav { position: -webkit-sticky; position: sticky; top: 0; padding: 5px; background-color: #cae8ca; border: 2px solid #4CAF50; } .static-nav { position: static; } </style> </head> <body> <h2>Página de teste</h2> <p id="teste" class="fixed-nav">Carro</p> <div style="height: 1000px;"></div> <p id="barra">Parede</p> <div style="height: 1000px;"></div> <p>Fim da página de teste</p> </body> </html>
  9. @Matheus Coutinho de Souza Bom amigo não tem como saber, niguem de fora vai saber como o sistema identifica isso, se não vai ser mais fácil bular eles, essas ocasions em que o sistema libera o acesso sem a necessidade de fazer o teste, tem como base a api do google que está conectada ao site, assim ele informa ao site que você é um humano e não um robo e libera o acesso. Se o seu caso de uso for para fazer um acesso como api ou fazer um web scraping, você ainda vai precissar fazer o RECAPCHA e isso trava o seu bot, porém os Chineses/Indianos deram um jeito de bular isso, basicamente você passa o RECAPCHA para a api deles e um Chines/Indiano faz o teste para o seu bot.
  10. @JonathanCruz Uma estrutura eficiente e basica para esses tipos de projeto, seria algo assim. Raiz src Controllers HomePage.php Middleware CSRFtoken.php Models Noticias.php Supporte.php cache data 0a 00043d103105bf0c3c64e64b1ad825651f8ebd5c resources view componets navbar.php footer.php homePage.php js main.js public index.php assets css style.csss img logo.png js main-mim.js config databaseConnect.php router.php kernel.php composer.json composer.lock .gitignore .gitattributes .env .env.example
  11. @Carlos Tempest Bom amigo o seu problema é simples. No seu form(elemento do HTML de formulario) quando você clicka em um elemento botão(button) ou input com a propriedade type(tipo) sendo "submit", ele vai executar um evento chamado submit, esse evento vai fazer uma requisição a outra página, caso você não tenha definido qual a página que ele deve fazer essa requicição ele vai requisitar a mesma página, passando os valores dos inputs do form via o método selecionado, e pro padrão o método é GET, esse método envia os dados pela url, e por esse motivo que você tem a impressão de que a página está reiniciando. Para corrigir isso, basta altearar o tipo do botão para button e também bloquear a chamada dessa evento no elemento form. // button <button type="button" id="pagar" class="btn btn-primary">Pagar</button> <button type="button" id="mostrar" class="btn btn-primary">Botão super legal :D</button> // form <form class="row g-3" onsubmit="return false;">
  12. @ferrarez Bom amigo tem um problema no seu código que modifica a propriedade value do input No final tem 3 aspas duplas e ai que tem um problema, ele está fechando no html assim, e dessa maneira ele vai dar erro no script onclick="document.getElementById(\'img-input-'.$NumberElements.'\').value = " Você pode troca o valor por null ou aspas simples com barra. onclick="document.getElementById(\'img-input-'.$NumberElements.'\').value = \'\'" ou onclick="document.getElementById(\'img-input-'.$NumberElements.'\').value = null" Não tem nada que execute tal ação no seu script. Um chute, pode ser porque o botão de remover imagem é do tipo submit, dessa maneira se você clickar nele ele vai fazer uma request e carregando a mesma página, assim dando a impressão de que ele removeu todos os valores dos inputs.
  13. @AlefSilva96Bom se você vai usar vue.js, você pode usar algum plugin de mask, como esse aqui: https://vuejs-tips.github.io/vue-the-mask/.
  14. @AlefSilva96 Tem varias maneira de você resolver isso. ,Um dela é fazer a verificação do valor digitado pelo usuário <input id="inputNumber" type="number" min="0"> <script> window.onload = function() { document.getElementById('inputNumber').addEventListener('keydown', function(event) { if (!Math.sign(event.key)) { event.preventDefault(); } }); } </script> Nesse exemplo ele bloqueia qualquer valor que não for um número isso inclui o simbolo "-", assim ele não pode inserir nenhum valor negativo. Obs..:Isso não vai impedir ele de alterar o valor no debug do navegador.
  15. @On For All Bom amigo a propriedade "writing-mode" não impossibilita o uso da propriedade "margin-left", provavelmente tem alguma outro coisa que está fazendo isso. Para que eu possa te ajudar você vai ter que postar o resto do seu css e o seu html.
  16. @Lucas R.Bom amigo você pode fazer isso criando uma data nova pegando como parametro o timestrap da data atual e adicionando 30 dias nela em milisegundos. const newyeartime = new Date(new Date().getTime() + 2592000000); const atualizarContador = () => { let currentTime = new Date() let difference = newyeartime - currentTime; let dias = Math.floor(difference / 1000 / 60 / 60 / 24); let horas = Math.floor(difference / 1000 / 60 / 60) % 24; let minutos = Math.floor(difference / 1000 / 60) % 60; let segundos = Math.floor(difference / 1000) % 60; console.log({ dias, horas, minutos, segundos }) } setInterval(atualizarContador, 1000); Você pode fazer a conversão da data do calendario selecionado pelo usuário em timestrap e depois fazer o calculo em milesegundos para adição na data atual e fazer o timer. Nesse exemplo eu fiz uma contagem para o "reveillon". const dataAtual = new Date(); const newyeartime = new Date(dataAtual.getTime() + (new Date('2020-12-31T24:00:00').getTime() - dataAtual.getTime())); const atualizarContador = () => { let currentTime = new Date() let difference = newyeartime - currentTime; let dias = Math.floor(difference / 1000 / 60 / 60 / 24); let horas = Math.floor(difference / 1000 / 60 / 60) % 24; let minutos = Math.floor(difference / 1000 / 60) % 60; let segundos = Math.floor(difference / 1000) % 60; console.log({ dias, horas, minutos, segundos }) } setInterval(atualizarContador, 1000);
  17. @Michael Picolo Seria algo assim: Código: <?php $xml = simplexml_load_file('carros.xml'); foreach($xml->veiculo as $item) { echo 'ID: ', utf8_encode($item->id), '<br>'; echo 'Tipo: ', utf8_encode($item->tipoveiculo), '<br>'; echo 'ZeroKM: ', utf8_encode($item->zerokm), '<br>'; echo 'Placa: ', utf8_encode($item->placa), '<br>'; echo 'Quantidades de Portas: ', utf8_encode($item->portas), '<br>'; echo 'Tipo de Combustivel: ', utf8_encode($item->combustivel->attributes()->id), ' - ', utf8_encode($item->combustivel), '<br>'; echo 'Preço: ', utf8_encode($item->preco), '<br><br>'; echo 'Complementos: ', '<br>'; foreach ($item->complementos->complemento as $complemento) { echo utf8_encode($complemento->attributes()->id), ' - ', $complemento, '<br>'; } echo '<br>', 'Opcionais: ', '<br>'; foreach ($item->opcionais->opcional as $opcional) { echo utf8_encode($opcional->attributes()->id), ' - ', $opcional, '<br>'; } echo '<br>', 'Acessorios: ', '<br>'; foreach ($item->acessorios->acessorio as $acessorio) { echo utf8_encode($acessorio->attributes()->id), ' - ', $acessorio, '<br>'; } echo '<br>', 'Fotos: ', '<br>'; foreach ($item->fotos->foto as $foto) { echo $foto, '<br>'; } }
  18. @Mizrain Phelipe Sá Pra que eu possa entender como você quer mostrar os dados no grafico, você tem que me passar um exemplo dos dados que estão vindo do servidor.
  19. @Mizrain Phelipe Sá Bom amigo uma coisa que eu achei estranho no seu código é que o objeto Chart recebe no primeiro argumento um Context do canvas e nesse código você não passa o Context e sim o elemento canvas. Tenta iniciar com isso var ctx = document.getElementById('myChart').getContext('2d'); var chart = new Chart(ctx, { type: 'bar', data: { labels: ['Red', 'Blue', 'Yellow', 'Green', 'Purple', 'Orange'], datasets: [{ label: 'titulo grafico', data: [1, 2, 3, 4, 5, 6], borderColor: 'rgba(77,166,253,0.85)', backgroundColor: 'red', }, ] }, });
  20. @AlefSilva96 A melhor forma de você descobrir isso seria consultando a documentação oficial e de preferência a versão do seu projeto. https://laravel.com/docs/8.x/migrations
  21. @Lerub Bom o erro que eu conterei que está parando o script está na sua função 'playscript()'. O problema está na declaração da string: echo "<script src="player.js"></scrpt>"; // Erro, As aspas duplas vão dar erro nesse caso de uso Você pode fazer corrigir isso usando barra ou aspas simples. echo '<script src="player.js"></scrpt>'; echo "<script src=\"player.js\"></scrpt>"; echo "<script src='player.js'></scrpt>"; Uma dica pra que você não tenha mais nenhum problema no seu projeto, é evitar o uso de letra com acento ou caracteres especias específicos no nome de uma função ou arquivo, tipo: cabeção = cabecao ou head/header.
  22. @Mateus Sidiney Bom amigo nesse caso o valor do cálculo feito para determinar a posição no eixo x e y da bola não vai ser sempre 5. O valor do raio da bola é 5 e não a posição atual dela no mapa, se você travar um eixo em 5 ela só vai se mover para um eixo. O que você pode fazer e reduzir o cálculo colocando arbitrariamente o valor do raio da bola. areaDesenho.fillRect(posicaoBolaX - 5, posicaoBolaY - 5, diametroBola, diametroBola); Uma dica legal é você usar CSS para ajustar o canvas na tela, exemplo:
  23. @TXTDBR Bom Dia amigo! Qual é a sua versão do npm, e se possível verifica se as versões Local e Global do knex são as mesmas. >npx knex --version Knex CLI version: 0.21.12 Knex Local version: 0.21.12
  24. @Mateus Sidiney Bom amigo eu não entendi a sua duvida, teria como esclarecer melhor a sua duvida? Eu encontrei um problema no nome da variável pontucaoJogador2 = pontuacaoJogador2 + 1; // pontuacaoJogador2 é invalido pontucaoJogador2 = pontucaoJogador2 + 1; // Uma vez eu fiz um jogo de pong usando javascript 'puro', esse projeto pode te ajudar. https://codepen.io/morto/pen/rEqaZP?editors=1010

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!