Ir ao conteúdo
  • Cadastre-se

Adriano_web

Membro Pleno
  • Posts

    188
  • Cadastrado em

  • Última visita

Tópicos solucionados

  1. O post de Adriano_web em Compilação de TypeScript desatualizado em JavaScript foi marcado como solução   
    Resolvido. Usei o comando --target es2022 no terminal, mas o tsconfig.json não está funcionando para nada, porém consegui fazer com que o arquivo ficasse com a versão do ECMAScript 2022. 
  2. O post de Adriano_web em Não consigo alterar "theme-colors" padrão do Bootstrap 5 com SASS foi marcado como solução   
    @GabrielSennaMs sim, mas continua não afetando. Eu vi na documentação e está realmente solicitando para definir variáveis depois do "@import.... functions" e antes do "@imp..variabels". Só consigo alterar se eu importar tudo de uma vez utilizando apenas o @import "../node_modules/bootstrap/scss/bootstrap"; no final. Mas queria importar somente o necessário. 
     
    Pessoal, consegui corrigir o problema. Tudo não passava de uma inconsistência na versão 5.2 do BS. O que fiz foi atualizar para a última versão, no caso a 5.3 e fazer o mesmo procedimento de antes. Na documentação foram alterados alguns módulos SCSS então tive que importar adequadamente conforme o que exigisse. 
  3. O post de Adriano_web em PYTHON - Tuplas dentro de Listas foi marcado como solução   
    @CH_Men77
    Sim, é exatamente por isso que a vírgula está presente dentro das tuplas. Ela é necessária para que o objeto seja tratado como uma tupla pelo Python.
     
    Se você não deseja exibir a vírgula na saída, você pode usar a função join() para juntar todos os elementos da lista de tuplas em uma única string. No entanto, essa string não será mais uma tupla, mas sim uma string formatada.
     
    Para remover a vírgula entre as tuplas, você pode fazer o seguinte:
     
    original_list = [("string1,"), ("string2,"), ("string3,")] new_list = [x.replace(",","") for x in original_list] print(new_list)  
    Isso irá imprimir:
     
    ["string1","string2","string3"]  
    Dessa forma a vírgula foi removida mas, se você precisar trabalhar com esses elementos como tuplas, você não poderá mais usá-los como tal. Lembrando que, se você precisar trabalhar com as tuplas, você não deve remover a vírgula.
     
    Espero ter ajudado!
  4. O post de Adriano_web em O vídeo integrado do processador Ryzen 5 5600G equivale a qual placa de vídeo? foi marcado como solução   
    @David19c O Ryzen 5 5600G é um processador integrado com uma GPU Radeon, Ele é uma placa de vídeo integrada que pode ser comparada com uma GPU dedicada de nível de entrada. Ele é capaz de rodar jogos com gráficos moderadamente detalhados e jogos leves, mas não é tão poderoso quanto uma GPU dedicada de alto desempenho como a GTX 1060, 1070, 1080 e similares.
     
    O desempenho da GPU integrada do Ryzen 5 5600G é semelhante a uma placa de vídeo dedicada como a GTX 750 Ti ou a GTX 950, que são GPUs dedicadas de nível de entrada.
     
    Tenha em mente que o desempenho da GPU integrada pode variar dependendo do clock, memória e outras especificações do processador e do sistema.
  5. O post de Adriano_web em Não vejo vantagem no "data binding" ANGULAR JS, está esquisito. foi marcado como solução   
    Pessoal, resolvi o problema em questão inserindo um método ao meu aplicativo como segue: 
     
    Ao digitar no campo de entrada, envia o valor a variável "valorCampoEmail" e essa será apurada num método "emailApurar" que retornará um booleano a diretiva ng-hide para exibir a mensagem de erro ou ocultá-la. 
    <input type="text" name="email" data-ng-model="valorCampoEmail" placeholder="[email protected]" autofocus /> <span data-ng-hide="emailApurar()">O seu e-mail não é válido!</span> <script> var app = angular.module("formValidTest", []); app.controller("formTestCtrl", function($scope) { $scope.valorCampoEmail = ""; $scope.emailApurar = function() { return /^\w+@{1}(aol|bol|outlook|yahoo|gmail|hotmail)(.com|.gov)$/.test( angular.copy($scope.valorCampoEmail) ) } }) </script>
  6. O post de Adriano_web em Bons livros para JavaScript foi marcado como solução   
    @Yanhxs Eu indico o livro "JavaScript o Guia Definitivo", porém, ele ensina do ECMAScript 3 ao 5 apenas, as novas versões não são mostradas, se você é iniciante é uma ótima indicação. É um livro muito detalhado, e exige uma leitura muito atenta para que se possa pegar os conceitos. Também recomendo o livro do John Duckett "JavaScript e jQuery: Desenvolvimento de Interfaces web Interativas", mas, no mesmo caso do anterior, ele ensina as versões de 2015-16 (ES5) e alguns conceitos de jQuery e AngularJS.  
  7. O post de Adriano_web em Espaço lateral entre objetos de uma <div> foi marcado como solução   
    @DiegoRLS Tudo bem? Eu consegui adicionando Flexbox no seu CSS e ajustando a sua estrutura HTM. Dê uma estudada sobre Flexbox ou Grid layout é bem conveniente . O seu código alterado se encontra nesse link basta dar um "Run": https://www.w3schools.com/code/tryit.asp?filename=GLZQVU2LN7NS
     
    Boas festas!  🙏💥
  8. O post de Adriano_web em Function para guardar script! JavaScript foi marcado como solução   
    @Mizrain Phelipe Sá Você pode usar uma função onload que executa o bloco de códigos quando a página termina de carregar, ou usar uma expressão de função chamada imediatamente. Segue o exemplo:. 
     
    Opção 1:
    window.onload = function() { // código vai aqui... }  
    Opção 2: 
    (function() { // Código vai aqui... })();  
    A diferença é clara, a opção 1 executa a função quando a página(seus conteúdos) terminam de carregar e a opção 2 executa o bloco de código imediatamente independente se a página terminou o carregamento ou não.
  9. O post de Adriano_web em Menu dropdown só funciona uma vez foi marcado como solução   
    @DiegoRLS Sua pergunta foi respondida em https://stackoverflow.com/questions/11533168/jquery-easingjquery-easing-def-is-not-a-function
  10. O post de Adriano_web em como eu poderia fazer uma notificação(efeito sonoro) de 2 em 2 hrs ? foi marcado como solução   
    @Wagner Leandro Tem novas tecnologias como Funções Assíncronas(ES7) que são executadas a partir de um certo período. Você poderia usá-las em conjunto com funções com o window.setTimeout(). 
     
    Sintaxe:
    async function nome([param[, param[, ... param]]]) { instruções }  
    Dê uma olhada MDN: 
    https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Statements/funcoes_assincronas
  11. O post de Adriano_web em problema com loop (erro de logica) foi marcado como solução   
    @Wagner Leandro Resolvi o problema atribuindo um <span> dentro do elemento <p> com a classe media-meta e coloquei essa clase dentro dele. Eu mexi em alguns nomes de classes e id's apenas, segue o código do HTML: 
     
    <html> <head> <meta charset="UTF-8"> <script src="js/script.js"></script> </head> <!-- Removi o ouvinte de tratamento de evento onload -- no <body> e adicionarei no código do script --> <body> <div id="menu"> <div id="logo"> <h1>Beber água</h1> <img class="a" src="/beber-agua/imgs/logo.png"> </div> <!-- Removi a lista e deixei apenas a tag âncora --> <a class="tempo" href="#">Tempo 00:00:00 Data: 00/0</a> </div> <div id="estatisticasInfo"> <!-- ID alterado antes era #home --> <h2>Estatísticas</h2> <div id="meta"> <p class="name-p">Meta</p> <!-- Adicionado um <span> com a classe .media-meta abaixo --> <p><span class="media-meta"></span>/2000L</p> <div class="barra"></div> <div class="barra-meta"></div> </div> </div> <!-- Remove o onload que estava no <div> sem nenhuma função --> <div class="add_agua" onload="remover()"> <h2>Beber Água</h2> <p>Bebi: <input type="number" class="ml" name="ml" maxlength="40"> ML</p> <!-- 1. removi os ouvintes de tratamento de eventos onclick() -- nos input, adicionarei no código do script -- 2. Alterei os valores dos atributos com id="botão" pois ambos eram iguais -- e isso era um erro semântico o de adicionar é "botaoAdd" e remover "botaoRemove --> <input type="submit" class="btn-btn" name="btn" value="Adicionar" id="botaoAdd"> <input type="submit" class="btn-btn" name="btn" value="Cancelar" id="botaoRemove"> <p class="res"></p> </div> <div id="parabens"> <h2 style="background: none; margin-top: 56px; " class="btn-parabens">Parabéns!<br> Você bebeu 2000L!<br>Até amanhã!</h2> <!-- Alterei o id abaixo para "botaoReset" e ouvinte de evento no código JS --> <input type="submit" class="btn-btn" name="btn" value="Resetar" id="botaoReset"> </div> <!-- Ouvinte de evento no código JS --> <input type="submit" value="Add" class="add-btn"> <div id="add-agua"></div> </body> </html>  
    No JavaScript eu alterei algumas coisas, adicionei elementos em cache e defini alguns novos nomes para as variáveis e funções. 
     
    Segue o código do script:
    window.onload = function() { // Defini elementos em cache para serem // usados mais tarde nesse script var tempoElm = document.querySelector(".tempo"), // O tempo infoDadosLitros = document.getElementById("estatisticasInfo"), // Antes id home valorEAlcanceLitros = document.querySelector(".media-meta"), // Meta de alcance progressoDeMeta = document.querySelector(".barra-meta"), // Progresso do usuário congrats = document.getElementById("parabens"), // Box com a mensagem de parabéns btnAddTabelaLitros = document.querySelector(".add-btn"), // Botão para abrir o // calculador de litros exibirLitros = document.querySelector(".add_agua"), // Box para o usuário inserir litros btnAddInfoLitros = document.getElementById("botaoAdd"), // Adicionar quantos litros bebeu btnRemoveInfoLitros = document.getElementById("botaoCancel"), // Cancelar a inserção de litros btnResetMensagemParabens = document.getElementById("botaoReset"); valorEAlcanceLitros.innerHTML = 0; // Padrão do <span class="media-meta" é o valor 0 exibirLitros.style.display = "none"; // Não exibir box para o usuário inserir litros congrats.style.display = "none"; // Não exibir box com a mensagem de parabéns // antes function data() function dataInfo() { // Variáveis com informações do tempo var t = new Date(), m = t.getMinutes(), h = t.getHours(), d = t.getDay() + 1, m = t.getMonth() + 1, s = t.getSeconds(); // Inserir no interior do elemento com a classe .tempo tempoElm.innerHTML = `Tempo: ${h}:${m}:${s} Data: ${d}/${m}`; window.setInterval(dataInfo, 1000); } dataInfo(); // Chamar a função dataInfo() // Função para add box de calcular litros // antes function add_remove() function addCampoQntAgua() { exibirLitros.style.opacity = 1.0; exibirLitros.style.display = "block"; infoDadosLitros.style.opacity = 0.3; } // Função de remover box de calcular litros function cancelar() { exibirLitros.style.display = "none"; infoDadosLitros.style.opacity = 1.0; } // Resetar a mensagem de parabéns function resetarCongrats() { this.parentNode.style.display = "none"; // Oculta o "pai" do botão de reset // seria no caso o <div id="parabens"> metaDeAlcanceLitros.innerHTML = 0; // <span class="media-meta">0</span> infoDadosLitros.style.opacity = 1; // Remove transparência dos dados de litros progressoDeMeta.style.width = "1%"; // O progresso volta a ser 1% } // Antes function js() < sem o parâmetro "e" function calculoLitros(e) { // Cria variáveis. A "msgErroRes" era apenas "res" var msgErroRes, ml; // Atribui valores a elas msgErroRes = document.querySelector(".res"); ml = Number(document.querySelector(".ml").value); // Se ml.value estiver vazio ou for menor que 0 if (!ml || Number(ml) < 0) { msgErroRes.innerHTML = "Ml inválido"; e.preventDefault(); return false; } else { // Se não var rel = 0; // Declara a variável do contador while(rel < 2000) { // Enquanto rel for menor que 2000 rel = rel + ml; // Faz um laço de rel + ml // Soma e exibe no HTML valorEAlcanceLitros.innerHTML = Number(valorEAlcanceLitros.innerHTML) + Number(rel); exibirLitros.style.display = "none"; // Não exibe informações dos litros infoDadosLitros.style.opacity = 1; // Sem transparência if (Number(valorEAlcanceLitros.innerHTML) > 249) { progressoDeMeta.style.width = "6%"; } if (Number(valorEAlcanceLitros.innerHTML) > 599) { progressoDeMeta.style.width = "13%"; } if (Number(valorEAlcanceLitros.innerHTML) > 999) { progressoDeMeta.style.width = "24%"; } if (Number(valorEAlcanceLitros.innerHTML) > 1249) { progressoDeMeta.style.width = "31%"; } if (Number(valorEAlcanceLitros.innerHTML) > 1499) { progressoDeMeta.style.width = "37%"; } if (Number(valorEAlcanceLitros.innerHTML) > 2000) { progressoDeMeta.style.width = "48%"; infoDadosLitros.style.opacity = 0.2; congrats.style.display = "block"; } break; } } } // Adiciona funções btnAddTabelaLitros.onclick = addCampoQntAgua; btnAddInfoLitros.onclick = function() {calculoLitros(event)}; btnRemoveInfoLitros.onclick = cancelar; btnResetMensagemParabens.onclick = resetarCongrats; }  
  12. O post de Adriano_web em CSS Alinhar elemento na Esquerda! foi marcado como solução   
    Olá @Mizrain Phelipe Sá boa tarde, tudo bem? Pode usar o justify-content: space-between no elemento com a classe .main-content-title deixando as divs de logo e titulos num <div> próprio, assim:
     
    <div class="main-content-title row"> <div> <div style="background-color:#e0f2f1;padding:1em"><img src="~/images/SSP.png" width="70" /></div> <div style="display:flex;flex-wrap:wrap; margin-left: 1.3em;"> <h2 class="styleTitulo">Bem vindo:</h2>&nbsp;&nbsp; <span class="material-icons" style="padding-top: 1.3em;font-size: 2em;">person</span> <h3 class="styleUsuario">@ViewBag.usuarioLogado</h3> </div> </div> <div class=""> <button class="btn pmd-btn-fab pmd-btn-flat pmd-ripple-effect btn-default" type="button"><i class="material-icons pmd-sm">add</i></button> <button class="btn pmd-btn-fab pmd-btn-flat pmd-ripple-effect btn-primary" type="button"><i class="material-icons pmd-sm">star</i></button> <button class="btn pmd-btn-fab pmd-btn-flat pmd-ripple-effect btn-info" type="button"><i class="material-icons pmd-sm">info</i></button> <button class="btn pmd-btn-fab pmd-btn-flat pmd-ripple-effect btn-success" type="button"><i class="material-icons pmd-sm">check</i></button> </div> </div>  
  13. O post de Adriano_web em z-index não funciona na tabela foi marcado como solução   
    Ola @Bruna Siqueira como informou @DiF basta colocar a tabela enrolada dentro de um elemento div para que ele obtenha o z-index. Segue o exemplo.
     
    <head> <title>Exemplo</title> <style> .tb-container { /* Novo recipiente para abrigar a tabela */ background: #FFF; position: relative; margin: -5% auto 0 auto; width: 30%; z-index: 50; /* destacar ela da imagem */ } .contatei { box-shadow: 1px 1px 10px gray; height: auto; padding: 10px; width: 100%; } .contatei table, tr, td { background: #FFF; border: none; } .contatei input { margin: 10px; margin-right: 0; width: 100%; } .contatei textarea { height: 6em; margin: 10px; margin-right: 0; width: 100%; } .contatei button { border: none; margin: 10px; margin-right: 0; width: 100%; } .topo { margin: 0; width: 100%; } </style> </head> <body> <img src="topo.png" class="topo"> <div class="tb-container"> <table class="contatei"> <tr> <td> <label for="nome">Nome*</label><br> <input type="text" id="nome" /> </td> </tr> <tr> <td> <label for="email">E-mail*</label><br> <input type="email" id="email" /> </td> </tr> <tr> <td> <label for="assunto">Assunto*</label><br> <input type="assunto" id="assunto" /> </td> </tr> <tr> <td> <label for="msg">Mensagem*</label><br> <textarea id="msg"></textarea> </td> </tr> <tr> <td> <button>Enviar</button> </td> </tr> </table> </div> </body> Explicação:
     
    Apenas adicionei mais uma declaração .tb-container {} na linha 1 do CSS que irá abranger algumas regras contidas no .contatei.
  14. O post de Adriano_web em Linguagem mais usada pra TI foi marcado como solução   
    @matheusdsl16  Você primeiro precisa saber em que setor você quer ficar, pode ser na área de desenvolvimento web, desenvolvimento de jogos ou desenvolvimento de software também, vai depender muito disso. Tipo, se for no caso do lado de desenvolvimento de sites usa-se o JavaScript, PHP, ASP ou Python como linguagens de programação. Do lado front-end você usa não só linguagens de programação mas também linguagens de marcação e de folhas de estilo como HTML e CSS já no lado back-end você opta por usar PHP, ASP.NET, Ruby e pode-se até se usar JavaScript em conjunto com o Node.js, também pode-se utilizar Java.
     
    Você também pode optar por desenvolver programas (Se for essa a área em que quer atua), linguagens como C, C++, C#, Pascal, Ruby e até Python são utilizadas para isso, Java pode ser usada para o desenvolvimento de jogos para o Android.

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...