Rafael Laurindo Postado Fevereiro 6, 2010 Denunciar Share Postado Fevereiro 6, 2010 (editado) RPLTeste.jsRPLTeste = { staticProperty : 'static property', staticFunc : function() { alert('static function'); }, class : function() { this.testar = function() { alert(''); } } } Esse é o arquivo teste.htm [/font] <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Insert title here</title> <script src="js/RPLAPI/RPLTeste.js"> function teste(){ RPLTeste.staticFunc(); } </script> </head> <body> <form> <input type="button" id="btnTeste" value="testar" onclick="teste()" /> </form> </body> </html> [font="Verdana"]O que está errado? O firebug do ff está mostrando: teste is not defined teste(); Editado Fevereiro 6, 2010 por Rafael Laurindo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 lobismano Postado Fevereiro 6, 2010 Denunciar Share Postado Fevereiro 6, 2010 E ai beleza.Troque class por Class no js.At Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rafael Laurindo Postado Fevereiro 6, 2010 Autor Denunciar Share Postado Fevereiro 6, 2010 Continua dando erro. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 lobismano Postado Fevereiro 6, 2010 Denunciar Share Postado Fevereiro 6, 2010 Foi mal, esqueci uma alteração que havia feito além da class por ClassFiz a inclusão do js assim.<script type="text/javascript" src='js/RPLAPI/RPLTeste.js'></script> e troquei <script src="js/RPLAPI/RPLTeste.js"> por <script> Ficou assim: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Insert title here</title> <script type="text/javascript" src='js/RPLAPI/RPLTeste.js'></script> <script> function teste(){ RPLTeste.staticFunc(); } </script> </head> <body> <form> <input type="button" id="btnTeste" value="testar" onclick="teste()" /> </form> </body> </html>At. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rafael Laurindo Postado Fevereiro 6, 2010 Autor Denunciar Share Postado Fevereiro 6, 2010 (editado) Agora está dando esta resposta:RPLTeste is not definedRPLTeste.staticFunc(); Editado Fevereiro 6, 2010 por Rafael Laurindo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jonathan Queiroz Postado Fevereiro 6, 2010 Denunciar Share Postado Fevereiro 6, 2010 O correto é utilizar o "text/javascript", sim.O erro está em utilizar a mesma tag para chamar o arquivo e executar o código. Ao invés de:<script type="text/javascript" src="arquivo.js"> código aqui </script> O correto é: <script type="text/javascript" src="arquivo.js"></script> <script type="text/javascript"> código aqui </script>Obs.:Para manter a compatibilidade com navegadores sem suporte a XHTML, prefira utilizar o "</script>" ao invés de shorttag (fechar com "/>"). Note que isso é somente com a tag script, nas outras não precisa. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rafael Laurindo Postado Fevereiro 6, 2010 Autor Denunciar Share Postado Fevereiro 6, 2010 Estou fazendo isso, mas ainda não funciona. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 lobismano Postado Fevereiro 6, 2010 Denunciar Share Postado Fevereiro 6, 2010 Cara, aqui funcionou.<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Insert title here</title> <script type="text/javascript" src='js/RPLAPI/RPLTeste.js'></script> <script> function teste(){ RPLTeste.staticFunc(); } </script> </head> <body> <form> <input type="button" id="btnTeste" value="testar" onclick="teste()" /> </form> </body> </html> RPLTeste.js RPLTeste = { staticProperty : 'static property', staticFunc : function() { alert('static function'); }, Class : function() { this.testar = function() { alert(''); } } }At. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jonathan Queiroz Postado Fevereiro 6, 2010 Denunciar Share Postado Fevereiro 6, 2010 Funcionar até funciona na maioria dos navegadoers, mas não é certo. O atributo type é obrigatório. O ideal é seguir os padrões garantir o funcionamento em todos os navegadores com suporte a Javascript.Edit:Fui ver agora o post do Rafael. Não funciona com as alterações acima ?Se possível poste como ficou o código e os erros apresentados. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rafael Laurindo Postado Fevereiro 6, 2010 Autor Denunciar Share Postado Fevereiro 6, 2010 (editado) Descobri o erro, eu estava colocando no src=RPLTeste.js e o nome era RPLTesteAPI.js. MIl perdões. Mas, gostaria ainda de fazer uma pergunta. Por que é obrigatório o uso do type? Editado Fevereiro 6, 2010 por Rafael Laurindo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jonathan Queiroz Postado Fevereiro 6, 2010 Denunciar Share Postado Fevereiro 6, 2010 É uma recomendação da W3C. A tag script não é reservada ao Javascript (embora seja a linguagem mais utilizada). Por exemplo, pode-se utilizar VBScript (só funciona no IE) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rafael Laurindo Postado Fevereiro 6, 2010 Autor Denunciar Share Postado Fevereiro 6, 2010 Entendi, mas só é possível rodar o VBscript no IE? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jonathan Queiroz Postado Fevereiro 6, 2010 Denunciar Share Postado Fevereiro 6, 2010 Sim, somente no IE. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rafael Laurindo Postado Fevereiro 7, 2010 Autor Denunciar Share Postado Fevereiro 7, 2010 Obrigado, resolveu mais uma vez.Esqueci de postar o porquê do erro, para chamar um script externo, devemos usar as tags <script></script> só, sem conteúdo algum. Abs. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Rafael Laurindo
RPLTeste.js
Esse é o arquivo teste.htmO que está errado? O firebug do ff está mostrando:
teste is not defined
teste();
Editado por Rafael LaurindoLink para o comentário
Compartilhar em outros sites
13 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.