Ir para conteúdo
Fórum Script Brasil

KaKarotto

Vencedores de desafio
  • Total de itens

    1.243
  • Registro em

  • Última visita

Tudo que KaKarotto postou

  1. KaKarotto

    Cadastro de perfumes

    É um código bem grandinho rsrs...O eclipse ajuda muito na hora da codificação, você programou tudo sozinho ou apenas copiou de algum lugar? Vai ter que esperar alguém com tempo disponível pra reproduzir seu código no Eclipse e verificar os erros para você. De qualquer forma, vou mover esse tópico para área correta. Movendo de Javascript >> Java
  2. Não tem como. Nem por iframes, nem por ajax. Esse tipo de coisa DEVE ser feita com linguagem de servidor, portanto, a solução é feita em um asp, php, ou algo do tipo.
  3. Você não pode remover dias de uma data, isso porque o objeto Date() não tem um método para remover dias, afinal de contas, não existem meses com 12 dias por exemplo. O objeto Date vai guardar sempre uma data válida. Se você não quer mostrar um determinado dia, basta usar uma outra função que não exiba tais dias.
  4. KaKarotto

    Screenshot

    Aeee marcão, da hora hein!! Não ficou tão bonito quanto meu Suse mas beleza. ahhahahhahahhaha Brincadeira, ficou muito show mesmo. Cairo-Dock não é meio bugada com o kde 4 não ? Estou pensando em usar, mas das vezes que tentei acabou zuando meu kde, na época que usava o 3.5 ainda. Abraço.
  5. responseXML não funciona no iE6. Você não sabe que tipo está tentando acessar? O melhor seria pegar sempre por text, tentar parsear como se fosse um xml com um try...catch. Se o try falhar, você exibe como html pelo catch.
  6. Para centralizar uma div: div.centralizada{ margin: 0 auto; } 0 indica que a div não vai ter margem superior ou inferior. "auto" indica que a margem esquerda e direita serão automáticas, ou seja, terão o mesmo tamanho, centralizando a div.
  7. Nope, o Javascript não lê arquivos da sua máquina. Você poderia usar um xml como banco de dados que guarda os caminhos das imagens ou então implementar isso em alguma linguagem de servidor.
  8. Pessoal, por favor, utilizem as tags de código pra ficar melhor a visualização do fórum, ble? ;)
  9. Movido de Dicas e tutoriais para HTML, Css.
  10. KaKarotto

    importar arquivo XML

    Só que isso é PHP. Movendo : JS >> PHP
  11. fields, você está comparando um valor de um input que é String com um valor do tipo Number. Deve fazer a comparação usando aspas no número zero para indicar que se trata de um objeto String. Compare números com números e strings com strings. SEMPRE o conteúdo pego nos valores de campos de formulário serão do tipo string.
  12. Desculpe minha ignorância, mas, o que seria um kml? Aqui tem um exemplo muito bom sobre como usar xml com java script: http://www.w3schools.com/xml/xml_dom.asp
  13. KaKarotto

    Screenshot

    Vai melhorando aos poucos, bem leve seu desk. Após muita luta contra, infelizmente abandonei meu kurumin, já que o desenvolvedor desistiu do projeto. Instalei minha segunda distro preferida, OpenSuse !!! \o/ Realmente ela dá um show no Kurumin (Kubuntu) que eu tinha antes. Saca só:
  14. Posta o link do site funcionando, fica muito mais fácil de resolver olhando pelo firebug.
  15. Tem como a gente visualizar ela através de um link? Talvez dê para saber o que se passa usando o Firebug.
  16. Não há como fazer isso no Css 2. Como fica o efeito ? Dá pra mostrar um print do que está tentando fazer ? Talvez tenha como fazer isso de outra forma, fazendo um jogo de div e tal. Senão, é melhor usar uma imagem mesmo para o efeito de sombra.
  17. Este post é uma dúvida, movido para a reespectiva área. =)
  18. Então, faça um html nesse primeiro domínio, e coloque um iframe nessa tela direcionando para o conteúdo do segundo endereço. Já tentou fazer isso? Se pá, dá certo.
  19. Roll, é um problema sério mandar email html. Geralmente, se utiliza txt simples, para garantir que o usuário vai conseguir ler o que pretende passar. Mas se realmente precisa que seu email seja formatado em html, precisa fazer testes nos leitores de email que seus usuários usam. Se eles se cadastram mandando um email, dá para você saber qual email eles usam, hotmail, uol, bol, gmail, etc. Geralmente se utiliza html simples sem nenhum css para o Outlook. Usando aquele html antigão mesmo, com <font> , <b> etc. Todas aquelas tags que não se usa mais. Nada de xhtml, um html 4.01 simples mesmo. O resto, precisa testar mesmo.
  20. Não tem não cara, infelizmente. Você tem razão, é uma idiotice realmente não existir um maxlength no textarea não é mesmo? Essa validação deve ser feita com Js E com a linguagem de servidor que estiver usando. Isso , porque mesmo que tivesse como fazer isso em html, eu poderia na minha máquina criar um html diferente e postar para onde seu formulário está apontando. Se o seu medo é que tentem hackear de alguma forma mandando mais caracteres do que deveria, mesmo o html não conseguiria deter. Caso esteja preocupado com as pessoas que apenas não gostam de javascript, deve então fazer uma versão no php, java, .net ou seja lá que linguagem esteja usando, para retornar uma tela de erro. Que pode ser até o mesmo html, acrescido apenas a mensagem de erro. Beleza? Abraço.
  21. Em Flash. Os vídeos do youtube são visualizados usando Flash.
  22. Oi Jonathan! obrigado por comentar!!! é raro isso, é muito bom essa interação Eu vou rebater o seu comentário, antes de elaborar o código eu já havia pensado em tudo isso que disse. Não se deve misturar os propósitos e também não é bom presumir nada. Isto é, se por algum motivo eu quisesse botar o telefone de outro país, ou se fosse alguma enquete, e o usuário precisasse inputar um telefone como 0800, o seu script quebraria. Fora que o script cresceria em todas as funções para esta tarefa, teria de adicionar isso à todas as funções. MAXLENGTH é um atributo html e portanto deve ser definido no próprio html. Na maioria das vezes esta forma de pensar é muito válida. Neste caso não é necessário, em javascript é mais rápido pegar os elementos pelo "." do que pelo id. No caso de formulário, o seu formulário sempre vai ter um nome e seus campos sempre terão um nome, caso contrário você não consegue enviar por post ou get seus dados. Não é necessário aumentar seu código colocando getElementById, ou usar document.forms, é uso desnecessário sendo que o jsMask já tem um objeto encapsulado guardando estas informações, seu código fica redundante e diz adeus a reutilização do código. Além de tudo isso, você induz o desenvolvedor a escrever um código desorganizado, porque ele não precisa especificar o formulario que está usando... Em um código grande, você pode demorar um bom tempo procurando aquele campo que mascarou, sem contar que a chamada em si da função fica gambiarrosa, nada elegante. Eu utilizei alguns conceitos do jquery.validate, por isso, estas questões já foram pensadas =).
  23. Oi galera ^_^ Eu queria aproveitar que muita gente pede uma função para mascarar campos de formulário para postar uma solução que eu fiz para este propósito. Eu encapsulei em um objeto chamado JSM algumas funções para tratar dados em campos de formulário e fiz este objeto de maneira extensível para adicionarmos mais métodos ao mesmo. Para quem está interessado, o código é este: /** * @author Eduardo Ottaviani * @example JSM("formulario").mask({ "nome" : "telefone" }) */ function JSM (form){ return new JSM.Class(form) } JSM . add = function(json){ JSM.methods[json.name] = json.method } JSM . methods = {} JSM . Class = function(form){ //Private: var form = document[form] //Public: this.inputs = {} this.form = function(){return form} this.test = function(object, mask){ var fn = JSM.methods[mask] setTimeout( function(){ object.value = fn(object.value) },1 ) } } JSM . Class.prototype["mask"] = function(json){ var form = this.form() var self = this var addEvent = null try{ if(!window.attachEvent) throw "addEventListener" addEvent = function(event, obj, fn){ obj.attachEvent( "on"+event, fn ) } } catch(eventListener){ if(!window[eventListener]) throw "Não existe a feature no navegador" addEvent = function(event, obj, fn){ obj.addEventListener( event, fn, false ) } } for(var x in json){ self.inputs[x] = json[x] addEvent("keypress", form[x], function(e){ var name = this.name if(e.srcElement) name = e.srcElement.name for (var y = 0; y < self.inputs[name].split("|").length; y++) { self.test(form[name], self.inputs[name].split("|")[y]) } }) } } // Funções de máscara foram pegas de: http://elcio.com.br/ajax/mascara/ JSM.add({ "name":"digitos", "method" : function(v){ return v.replace(/\D/g,"")} }) JSM.add({ "name":"leech", "method": function(v){ v=v.replace(/o/gi,"0") v=v.replace(/i/gi,"1") v=v.replace(/z/gi,"2") v=v.replace(/e/gi,"3") v=v.replace(/a/gi,"4") v=v.replace(/s/gi,"5") v=v.replace(/t/gi,"7") return v } }) JSM.add({ "name":"telefone", "method": function(v){ v=v.replace(/\D/g,"") //Remove tudo o que não é dígito v=v.replace(/^(\d\d)(\d)/g,"($1) $2") //Coloca parênteses em volta dos dois primeiros dígitos v=v.replace(/(\d{4})(\d)/,"$1-$2") //Coloca hífen entre o quarto e o quinto dígitos return v } }) JSM.add({ "name":"cpf", "method": function(v){ v=v.replace(/\D/g,"") //Remove tudo o que não é dígito v=v.replace(/(\d{3})(\d)/,"$1.$2") //Coloca um ponto entre o terceiro e o quarto dígitos v=v.replace(/(\d{3})(\d)/,"$1.$2") //Coloca um ponto entre o terceiro e o quarto dígitos //de novo (para o segundo bloco de números) v=v.replace(/(\d{3})(\d{1,2})$/,"$1-$2") //Coloca um hífen entre o terceiro e o quarto dígitos return v } }) JSM.add({ "name":"cep", "method": function(v){ v=v.replace(/D/g,"") //Remove tudo o que não é dígito v=v.replace(/^(\d{5})(\d)/,"$1-$2") //Esse é tão fácil que não merece explicações return v } }) JSM.add({ "name":"cnpj", "method": function(v){ v=v.replace(/\D/g,"") //Remove tudo o que não é dígito v=v.replace(/^(\d{2})(\d)/,"$1.$2") //Coloca ponto entre o segundo e o terceiro dígitos v=v.replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2.$3") //Coloca ponto entre o quinto e o sexto dígitos v=v.replace(/\.(\d{3})(\d)/,".$1/$2") //Coloca uma barra entre o oitavo e o nono dígitos v=v.replace(/(\d{4})(\d)/,"$1-$2") //Coloca um hífen depois do bloco de quatro dígitos return v } }) JSM.add({ "name":"romanos", "method": function(v){ v = v . toUpperCase() //Maiúsculas v = v . replace(/[^IVXLCDM]/g,"") //Remove tudo o que não for I, V, X, L, C, D ou M //Essa é complicada! Copiei daqui: http://www.diveintopython.org/refactoring/refactoring.html while(v . replace(/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/,"")!="") v = v . replace(/.$/,"") return v } }) JSM.add({ "name":"site", "method":function(v){ //Esse sem comentarios para que você entenda sozinho ;-) v=v.replace(/^http:\/\/?/,"") var dominio=v var caminho="" if(v.indexOf("/")>-1) dominio = v.split("/")[0] caminho = v.replace(/[^\/]*/,"") dominio = dominio.replace(/[^\w\.\+-:@]/g,"") caminho = caminho.replace(/[^\w\d\+-@:\?&=%\(\)\.]/g,"") caminho = caminho.replace(/([\?&])=/,"$1") if(caminho!="") dominio = dominio.replace(/\.+$/,"") v = "http://" + dominio + caminho return v } }) JSM.add({ "name" : "data", "method" : function (v){ v=v.replace(/\D/g,"") v=v.replace(/(\d{2})(\d)/,"$1/$2") v=v.replace(/(\d{2})(\d)/,"$1/$2") return v } }) [/codebox] O JSM é uma função que recebe como parâmetro o nome do formulário em questão e tem dois métodos que nos interessam: Object JSM: JSM.mask(Object json) Este método retorna o próprio objeto JSM e recebe um objeto do tipo json, com os pares de valores {"name":"mascara"}. "name" é o nome do campo e mascara o tipo de máscara a ser usado naquele campo. Ex: [code]<form id="formulario" name="formulario"> <input type = "text" name = "numeros" /> <input type = "text" name = "tel" /> <button type="submit">Botão</button> </form>[/code] [code]JSM("formulario").mask({ "numeros" : "digitos", "tel" : "telefone" })[/code] void: JSM.add( Object json ) Este método não retorna nada e é usado para ESTENDER o objeto JSM com mais métodos de máscara. Ele recebe um objeto json com pares de valores {"name": "nomeDaMascara", "method":function(valor){return valor}} A chave "name" terá o valor do nome da mascara, para ser usado na chamada de mask. A chave "method" terá como valor uma função que terá um argumento definido pelo desenvolvedor que será o valor do campo digitado. Esta função irá tratar o valor do campo e SEMPRE retornar um novo valor ( Sempre do tipo STRING ) que será o substituído pela máscara. Ex: [code]JSM.add({ "name":"cep", "method": function(v){ v=v.replace(/D/g,"") //Remove tudo o que não é dígito v=v.replace(/^(\d{5})(\d)/,"$1-$2") //Esse é tão fácil que não merece explicações return v } })[/code] Embora o objeto JSM seja de minha autoria, obviamente as funções não são, e foram retiradas daqui: http://elcio.com.br/ajax/mascara/ Apenas aproveitei as funções do Elcio e adaptei para este script com o propósito de facilitar seu uso e de estende-lo. Deixarei um link para o download aqui e o espaço aberto para sugestões e/ou críticas. Ficaria muito feliz se alguém aproveitasse para postar adições de novos métodos que não tenha neste. :) Abraço. [/indent] jsMask.zip
×
×
  • Criar Novo...