Jump to content

Rafael da Silveira

Members
  • Content count

    31
  • Joined

  • Last visited

Community Reputation

1 Comum

1 Follower

About Rafael da Silveira

Recent Profile Visitors

468 profile views
  1. Rafael da Silveira

    Aguardar Fetch() para continuar

    Boa noite. Tudo bem? Pessoal, estou com um problema aparentente simples. Tenho uma api que esta sendo consumida por paginas em HTML. Ao carregar essa pagina, busco na api as informações do usuario e crio uma varial para acessar as informações. O problema é que os dados só chegam depois que a pagina esta renderizada. Como faço para esperar o carregamento dos dados e somente depois continuar a rederização? Estou usando a api Fetch(). Abraço
  2. Rafael da Silveira

    Editor de código na página

    Boa noite galera, tudo bem? É o seguinte, preciso implementar um editor de código igual aos que tem na hospedagens. Tenho um painel em que faz a inserção de imagens, a troca de textos, legendas, enfim, toda a manipulação do site. O que gostaria de implementar é um página em que o usuário avançado possa fazer as edições de código necessárias na páginas do seu site... Alguém sabe como posso fazer isso? Algo como a imagem.
  3. Rafael da Silveira

    Otimizador de corte

    Olá amigos, bom dia. Estou com um projeto que precisa fazer um plano de corte. Funciona basicamente da seguinte forma... O cliente digita a quantidade de peças que vai precisar e quais as medidas(comprimentoxlargura), criando uma lista de peças para o corte. A minha dificuldade está em programar algo que planejasse o corte da melhor forma possível, em cima de uma chapa com medida já definida. Não preciso do código pronto, a logica por traz disso já me ajudaria bastante. O resultado, seria algo como a imagem. Desde já agradeço.
  4. Rafael da Silveira

    Não repetir addEventListener

    Consegui resolver criando flag, -Verifico se existe a flag -se não existir adiciono o evento -no final do evento crio a flag Desse forma ele só vai adicionar o evento na primeira vez que a página for carregada via ajax, caso seja carregada outras vezes o evento não vai se repetir if(typeOf flagImage == "undefined"){ window.addEventListener('onkeydown',function(e){ if(lightBoxCliked == 'Images'){ document.querySelector('text').innerHTML += e.key; } flagImage = true; }); }
  5. Rafael da Silveira

    Não repetir addEventListener

    O problema é que cada um executa uma ação diferente. O evento que preciso chamar é o keydonw. E preciso fazer isso em várias light box, via php em um for vindo do banco de dados. Cada light box tem um tipo que diz qual o evento de ser adicionado quando ela for clicada. pra você entender... algumas vão digitar algo na light a partir das teclas digitadas, outras vão verificar as setas, e outras números. essa função vai ser ativada quando a ligth é carregada, eu vejo o tipo e adiciono o evento.
  6. Rafael da Silveira

    Não repetir addEventListener

    Galera, bom dia. Tenho 3 Botões onde cada um carrega via ajax em uma light box uma página HTML; Cada página vem com um addEventListener para escutar o evento do teclado e executar uma ação de acordo com a tecla digitada. Até ae tudo bem. O problema começa, quando o lightBox é fechado. Quando o usuario click novamente para abrir a lightBox, o evento é adicionado novamente e ele reconhece duas 'tecladas'; Aparece por exemplo: aa OBS: Pô cara, usa o método on. O método on não resolve, porque apaga o eventListener da outra ligthBox; Preciso adicionar um addEventListener apenas uma vez, alguma idéia? Abraços.
  7. Rafael da Silveira

    Calendario

    Galera, tenho uma calendário em javascript e esta funcionando perfeitamente. Porém, preciso que independente da data de hoje...clicando em uma "seta" ele passe para o próximo mês, e quando acabar o ano ele adicione um ano automaticamente... E para um mês anterior também... Segue o código que já tenho... function calendar(){ hoje = new Date(); dia = hoje.getDate(); mes = hoje.getMonth(); ano = hoje.getFullYear(); nomemes = ["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"]; inicio = new Date("1"+ nomemes[mes]+" "+ano); letrasSemana = ["Dom","Seg","Ter","Qua","Qui","---","Sab"]; a = 0; bi = bissexto(ano)? 29 : 28; diasmes = [31,bi,31,30,31,30,31,31,30,31,30,31]; var Calendar = document.createElement('div'); Calendar.style.width = '210px'; Calendar.style.height = '242px'; Calendar.style.cursor = 'context-menu'; var Topo = document.createElement('div'); Topo.style.position = 'relative'; Topo.style.cssFloat = 'left'; Topo.style.width = '100%'; Topo.style.boxSizing = 'border-box'; Topo.style.padding = '5px'; Topo.style.background = 'linear-gradient(to bottom,#EEE,#DDD,#EEE)'; Topo.style.borderBottom = '#CCC solid 1px'; Topo.style.textAlign = 'center'; Topo.innerHTML = nomemes[mes]+" de "+ano; //NEXT var Next = document.createElement('img'); Next.style.position = 'absolute'; Next.style.top = '10px'; Next.style.right = '4px'; Next.style.width = '14px'; Next.style.height = '14px'; Next.style.cursor = 'pointer'; Next.src = "data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMS4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDQ3Ny4xNzUgNDc3LjE3NSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDc3LjE3NSA0NzcuMTc1OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgd2lkdGg9IjE2cHgiIGhlaWdodD0iMTZweCI+CjxnPgoJPHBhdGggZD0iTTM2MC43MzEsMjI5LjA3NWwtMjI1LjEtMjI1LjFjLTUuMy01LjMtMTMuOC01LjMtMTkuMSwwcy01LjMsMTMuOCwwLDE5LjFsMjE1LjUsMjE1LjVsLTIxNS41LDIxNS41ICAgYy01LjMsNS4zLTUuMywxMy44LDAsMTkuMWMyLjYsMi42LDYuMSw0LDkuNSw0YzMuNCwwLDYuOS0xLjMsOS41LTRsMjI1LjEtMjI1LjFDMzY1LjkzMSwyNDIuODc1LDM2NS45MzEsMjM0LjI3NSwzNjAuNzMxLDIyOS4wNzV6ICAgIiBmaWxsPSIjMDAwMDAwIi8+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg=="; //BACK var Back = document.createElement('img'); Back.style.position = 'absolute'; Back.style.top = '10px'; Back.style.left = '4px'; Back.style.width = '14px'; Back.style.height = '14px'; Back.style.cursor = 'pointer'; Back.src = "data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMS4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDQ3Ny4xNzUgNDc3LjE3NSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDc3LjE3NSA0NzcuMTc1OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgd2lkdGg9IjE2cHgiIGhlaWdodD0iMTZweCI+CjxnPgoJPHBhdGggZD0iTTE0NS4xODgsMjM4LjU3NWwyMTUuNS0yMTUuNWM1LjMtNS4zLDUuMy0xMy44LDAtMTkuMXMtMTMuOC01LjMtMTkuMSwwbC0yMjUuMSwyMjUuMWMtNS4zLDUuMy01LjMsMTMuOCwwLDE5LjFsMjI1LjEsMjI1ICAgYzIuNiwyLjYsNi4xLDQsOS41LDRzNi45LTEuMyw5LjUtNGM1LjMtNS4zLDUuMy0xMy44LDAtMTkuMUwxNDUuMTg4LDIzOC41NzV6IiBmaWxsPSIjMDAwMDAwIi8+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg=="; //ADICIONA AO DOCUMENT document.querySelector('#calendario').appendChild(Calendar); Calendar.appendChild(Topo); Topo.appendChild(Back); Topo.appendChild(Next); for(i=0; i<letrasSemana.length; i++){ var t = document.createElement('div'); t.style.position = 'relative'; t.style.cssFloat = 'left'; t.style.background = '#EEE'; t.style.width = '30px'; t.style.height = '30px'; t.style.padding = '6px 0px'; t.style.fontSize = '12px'; t.style.textAlign = 'center'; t.style.boxSizing = 'border-box'; t.style.borderBottom = '#CCC solid 1px'; t.innerHTML = letrasSemana[i]; Calendar.appendChild(t); } function bissexto(year) { if(year % 4 == 0){ return true }else{ return false } } if(inicio.getDay()== 0){ increase = 0; }else{ increase = 1; } for(i=1; a < diasmes[mes]; i++){ if(i <inicio.getDay() +increase){ var t = document.createElement('div'); t.style.position = 'relative'; t.style.cssFloat = 'left'; t.style.background = '#EEE'; t.style.width = '30px'; t.style.height = '30px'; t.style.paddingTop = '3px'; t.style.boxSizing = 'border-box'; t.style.textAlign = 'center'; Calendar.appendChild(t); }else{ a++; if(a == dia){ var t = document.createElement('div'); t.style.position = 'relative'; t.style.cssFloat = 'left'; t.style.background = '#03C'; t.style.color = '#FFF'; t.style.width = '30px'; t.style.height = '30px'; t.style.paddingTop = '4px'; t.style.boxSizing = 'border-box'; t.style.textAlign = 'center'; t.innerHTML = a; Calendar.appendChild(t); }else{ var t = document.createElement('div'); t.setAttribute('class','days'); t.style.position = 'relative'; t.style.cssFloat = 'left'; t.style.background = 'none'; t.style.width = '30px'; t.style.height = '30px'; t.style.paddingTop = '4px'; t.style.boxSizing = 'border-box'; t.style.textAlign = 'center'; t.innerHTML = a; Calendar.appendChild(t); } } } //OVER OUT var allDays = document.querySelectorAll('.days'); for(i=0; i < allDays.length; i++){ allDays[i].onmouseover = function(){ this.style.background = '#06F'; this.style.color = '#FFF'; } allDays[i].onmouseout = function(){ this.style.background = 'none'; this.style.color = '#000'; } } } calendar();
  8. Rafael da Silveira

    Requisição ajax com retorno Json não funciona se trocar tabela

    Boa tarde. Ao amigos que por ventura tiverem o problema...que esta na codificação utf8...o json faz essa tradução....intão quando ele encontra Ç...ou acentuação e da erro. Estou estudando e procurando com resolver de maneira eficaz o problema.
  9. Galera, estou com um problema...e não consigo intender o porque. Tenho uma pagina, que faz uma requisição php via ajax, que me retorna uma consulta em json. Tudo estava funcionando nos testes até que troquei o nome da tabela e bum...na acontece. Função que faz a requisição //AJAX CARREGAMENTO DA DADOS function getData(url,search,action){ self = this; this.completed = action; if(window.XMLHttpRequest){ ajax = new XMLHttpRequest(); }else if (window.ActiveXObject){ try{ ajax = new ActiveXObject("Msxml2.XMLHTTP"); }catch(e){ ajax = new ActiveXObject("Microsoft.XMLHTTP"); } } ajax.onreadystatechange = function(){ if(ajax.readyState == 4){ self.completed(JSON.parse(ajax.responseText)); } } if(search != undefined){ url = url + "?search=" + search }else{ url = url + "?search="; } ajax.open('POST',url,true); ajax.send(); } Pagina que faz a chamada function listingAgenda(data){ document.querySelector('#list-agenda results').innerHTML = ''; for(i=0; i < data.length; i++){ document.querySelector('#list-agenda .results').innerHTML += data[i].id + "<br>"; } } //CARREGAMENTO AO ABRIR A JANELA getData('modules/agenda/motor-get-data.php','',function(data){ listingAgenda(data); }); PHP <?php header('Cache-Control: no-cache, must-revalidate'); header('Content-Type: application/json; charset=utf-8'); $database = '@rdmoveisplanejados'; $search = $_GET['search']; try{ if($search == ''){ $conn = new PDO("mysql:host=localhost;dbname=$database", "root", ""); $sql = $conn->prepare("SELECT * FROM tbl_caixa "); $sql -> execute(); $row = $sql->fetchAll(PDO::FETCH_ASSOC); echo json_encode($row); } }catch(PDOException $e){ echo "Falha:001<br>"; echo "Erro:" . $e->getMessage(); exit; } ?> QUANDO O BANCO DE DADOS CAIXA È SELECIONADO, FUNCIONA PERFEITAMENTO RETORNANDO UM ARRAY DE OBJETOS JSON MAS QUANDO ALTERO A TABELA DE CONSULTA NÂO ACONTECE NADA. ALGUMA LUZ?
  10. Rafael da Silveira

    Extends em Java Script

    Galera, preciso extender uma classe... Como faço? Estou criando a classe da seguinte forma: function Carros(){ //PROPRIEDADES E METODOS }
  11. Rafael da Silveira

    mask input de preço

    Bruno..eu uso essa aqui... document.querySelector('input').addEventListener('keyup',function(){ v = this.value; v = v.replace(/\D/g,"") // permite digitar apenas numero v = v.replace(/(\d{1})(\d{23})$/,"$1.$2") v = v.replace(/(\d{1})(\d{20})$/,"$1.$2") v = v.replace(/(\d{1})(\d{17})$/,"$1.$2") v = v.replace(/(\d{1})(\d{14})$/,"$1.$2") // coloca ponto antes dos ultimos digitos v = v.replace(/(\d{1})(\d{11})$/,"$1.$2") // coloca ponto antes dos ultimos 11 digitos v = v.replace(/(\d{1})(\d{8})$/,"$1.$2") // coloca ponto antes dos ultimos 8 digitos v = v.replace(/(\d{1})(\d{5})$/,"$1.$2") // coloca ponto antes dos ultimos 5 digitos v = v.replace(/(\d{1})(\d{1,2})$/,"$1,$2") // coloca virgula antes dos ultimos 2 digitos this.value = "R$ " + v; }); Se você não quiser colocar o R$ é só tirar antes de retornar o resultado. T+
  12. Rafael da Silveira

    Propriedades "Secundárias"??

    Galera...iniciando os estudos a em javascript orientada a objetos Ja estou criando meus objetos perfeitamente...porem..como faço para criar propriedades "secundarias"...tipo... Desse forma eu faço... objeto.background = ''#999'; Mas gostaria fazer assim, não sei como...se é um novo objeto...e como acessa-lo..enfim...não sei nada. //EXEMPLO objeto.lista.background = "#999"; Se puderem me ajudar.
  13. Rafael da Silveira

    Criando Elemento com o retorno php

    Galera, é o seguinte! tenho um código que faz uma requisição ajax em uma pagina php , que faz um consulta e retorna os dados em json: Com o resultado, gostaria de criar uma listagem com o resultado. como percorrer o resultado via javascript? Se possivel, gostaria que essa função me retornasse o json...mais não tive sucesso! Código da função <html xmlns="http://www.w3.org/1999/xhtml"> <title>Get Data </title> </head> <body> </body> </html> <script> function getData(url,query){ var ajax = null; if(window.XMLHttpRequest){ ajax = new XMLHttpRequest(); }else if (window.ActiveXObject){ try{ ajax = new ActiveXObject("Msxml2.XMLHTTP"); }catch(e){ ajax = new ActiveXObject("Microsoft.XMLHTTP"); } } ajax.onreadystatechange = function(){ if(ajax.status >= 200 && ajax.status <= 400){ resultadoGetData = ajax.responseText; } } if(query != undefined){ url = url + "?query=" + query; }; ajax.open('POST',url,true); ajax.send(); //return ajax.onreadystatechange(); return resultadoGetData; } var resultado = getData('motor-get-data.php','SELECT * FROM tbl_caixa'); </script> Código da pagina php header('Cache-Control: no-cache, must-revalidate'); header('Content-Type: application/json; charset=utf-8'); $database = '@rdmoveisplanejados'; $query = $_GET['query']; try{ $conn = new PDO("mysql:host=localhost;dbname=$database", "root", ""); $sql = $conn->prepare($query); $sql -> execute(); $cont = $sql->rowCount(); $row = $sql->fetchAll(PDO::FETCH_OBJ); echo json_encode($row); }catch(PDOException $e){ echo "Falha:001<br>"; echo "Erro:" . $e->getMessage(); exit; } Agradeço
  14. Rafael da Silveira

    Converter objeto JSON em "url" JAVASCRIPT

    Eziquiel...era isso mesmo que precisava....obrigado
  15. Como converter um Objeto JSON {"teste":"teste1","teste2","test"} para ser enviado via url teste=teste1&teste2=test Fiz com replace, mais fui mandar um valor moeda e deu errado...pois trocou a , por = Alguma solução?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.