Jump to content


Photo

Valor Numérico


  • Faça o login para participar
13 replies to this topic

#1 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Não informado
  • Localidade:BH - MG

Posted 01/07/2005, 11:35

Opa..

Tenho uma variável que se accrescida a algum valor ela faz o seguinte:

var x = 2;

x = x + 5;

Resultado:

x = 25

ao invéz de:

x = 7

:blink:

Como resolve essa bagaça? :wacko:

----------

Bem,

usei eval(), mas qual é o mais indicado? eval(), parseInt() ou parseFloat() e quando eu uso cada um?

--------------------------------------------------------------------------------------------

<script language="JavaScript">
 document.getElementById("TxtNext").value = "2";
 document.getElementById("TxtAnt").value = "1";
 document.getElementById("TxtTotal").value = "<%=xNumPags%>";
 document.getElementById("TxtFile").value = "<%=xPathTmp%>";
</script>


Funciona no IE, mas não funciona no Firefox.. detalhe: no firefox dá o erro de..

document.getElementById("TxtNext") has no properties


:/

What can i do?

Abs.

Edição feita por: v1d4l0k4, 01/07/2005, 13:11.

Eduardo Batista

#2 denisweb

denisweb

    Denis Ferrari

  • Usuários
  • 245 posts
  • Sexo:Não informado
  • Localidade:Vitória - ES
  • Interesses:Compartilhar conhecimentos.

Posted 01/07/2005, 12:32

Multiplique os valores por 1, assim o java reconhece os valores como número e não os concatena...

Flw...
Denis Ferrari
Gerente de Projetos
Vixtime Agência Digital

#3 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Não informado
  • Localidade:BH - MG

Posted 01/07/2005, 13:00

Hm..

Mas e quanto às funções, qual seria a melhor?

E quanto ao erro? O que pode ser e o que posso tentar?
Eduardo Batista

#4 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 01/07/2005, 13:16

Estranho ... :blink:

Fiz:
<script type="text/javascript">
var x=2;
x=x+5;
document.write(x);
</script>
Aqui tanto no IE 6 como no FF 1.0.4 imprimiu 7, ao invés de 25 ... :rolleyes:

Mas, se com tu não dá certo, acredito que eval() seja a função mais indicada ... (y)

Quanto ao erro do FF, está acontecendo porquê tu está chamando o JS antes do elemento ser criado ... ;)

[]’s :DAté mais

#5 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 01/07/2005, 13:33

Use parseInt se seu número for inteiro e parseFloat se este for decimal.
Klaus Paiva
Conheça também: Taperás

#6 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Não informado
  • Localidade:BH - MG

Posted 01/07/2005, 14:50

Blz..

Quanto ao erro do FF, está acontecendo porquê tu está chamando o JS antes do elemento ser criado ...


Não não...

A primeira coisa que faço é criar os elementos e depois, no rodapé de todo o código, está o código JS atribuino novos valores aos elementos.

E o que vale levar em consideração é o fato de a rotina funcionar no IE, ser cross-browser e não funcionar no FF.

xxxxxx né?
Eduardo Batista

#7 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 01/07/2005, 14:51

E o que vale levar em consideração é o fato de a rotina funcionar no IE, ser cross-browser e não funcionar no FF.

xxxxxx né?

Então não é cross-browser. =)

Posta seu XHTML aí que a gente resolve.
Klaus Paiva
Conheça também: Taperás

#8 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Não informado
  • Localidade:BH - MG

Posted 01/07/2005, 14:53

<script language="JavaScript">
document.getElementById("TxtNext").value = "2";
document.getElementById("TxtAnt").value = "1";
document.getElementById("TxtTotal").value = "<%=xNumPags%>";
document.getElementById("TxtFile").value = "<%=xPathTmp%>";
</script>

Mas isso é cross-browser.. Não? Se não me dá uma luz aí q tá osso.
Eduardo Batista

#9 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 01/07/2005, 15:05

Desde que o navegador suporte getElementById, é cross-browser.

Dá um view-source na sua página, e cola aqui, o HTML e o JS dela.
Klaus Paiva
Conheça também: Taperás

#10 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Não informado
  • Localidade:BH - MG

Posted 01/07/2005, 15:34

Blz..

<script language="JavaScript" src="../Js/JsEnv2.JS"></script>

<input type="hidden" name="TxtNext" id="TxtNext" value="0">
<input type="hidden" name="TxtAnt" id="TxtAnt" value="0">
<input type="hidden" name="TxtTotal" id="TxtTotal" value="">
<input type="hidden" name="TxtFile" id="TxtFile" value="">

<table width="100%">
	<tr>
  <td width="8%">
 	 <img src="" id="ImgAnt" name="ImgAnt" alt="<-" onClick="MovImgAnt()" style="cursor:pointer;cursor:hand;"/>

  </td>
  <td width="8%">
 	 <img src="" id="ImgNext" name="ImgNext" alt="->" onClick="NextImg()" style="cursor:pointer;cursor:hand;"/>
  </td>
  <td width="84%"></td>
	</tr>
</table>
	

	
	<img src="../../tmp/{41E16909-B602-4B10-9FE8-FD061071A5E9}_1.jpeg" name="Previa" id="Previa" alt="Prévia da Imagem"/>
	
	<script language="JavaScript">
  document.getElementById("TxtNext").value = "2";
  document.getElementById("TxtAnt").value = "1";
  document.getElementById("TxtTotal").value = "18";
  document.getElementById("TxtFile").value = "../../tmp/{41E16909-B602-4B10-9FE8-FD061071A5E9}_";
	</script>

	
	
<script language="JavaScript">parent.document.getElementById("frm").select1.disabled = false;</script>

Ps: Ta assim mesmo, ta ai completão, é assim mesmo sem as tags <html><body><head> e não sei se isso possa estar influenciando.. Ah e isso ai eh o resultado de um codigo dinamico, isso tudo ai foi gerado em um iframe.
Eduardo Batista

#11 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 01/07/2005, 15:39

É... Firefox RLZ!

<body>

<input type="hidden" name="TxtNext" id="TxtNext" value="0" />
<input type="hidden" name="TxtAnt" id="TxtAnt" value="0" />
<input type="hidden" name="TxtTotal" id="TxtTotal" value="" />
<input type="hidden" name="TxtFile" id="TxtFile" value="" />

<script language="JavaScript">
document.getElementById("TxtNext").value = "2";
document.getElementById("TxtAnt").value = "1";
document.getElementById("TxtTotal").value = "18";
document.getElementById("TxtFile").value = "../../tmp/{41E16909-B602-4B10-9FE8-FD061071A5E9}_";
alert (document.getElementById("TxtNext").value);
alert (document.getElementById("TxtAnt").value);
alert (document.getElementById("TxtTotal").value);
alert (document.getElementById("TxtFile").value);
</script>

</body>


Klaus Paiva
Conheça também: Taperás

#12 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Não informado
  • Localidade:BH - MG

Posted 01/07/2005, 15:57

Rs... :D

E eu me matando aqui... :P

Bom, deixa eu aproveitar o tópico e ...

Tipo eu tenho um elemento IMG, nele serão mostrados 10 arquivos.
Pra trocar de uma foto pra outra, eu coloquei dois botões, e aí é feita a movimentação da seguinte forma:

no campo input hidden eu estou armazenando o valor da foto atual, suponhamos que seja 5.

então se o cara clicar pra mostrar a próxima foto(a foto 6) ela deveria ser mostrada no Firefox como é mostrada no IE, mas fica assim na barra de status "Recebendo dados de ..." e nunca que é mostrada a bendita.

pra fazer essa troca das foto eu to usando:

document.getElementById("IMG").src ="../../tmp/"+ eval(a) + ".jpeg";

onde eval(a) é a foto a ser mostrada. Mas não quer dar no Firefox. Alguma dica? Alguma coisa errada?
Eduardo Batista

#13 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 01/07/2005, 16:01

Bom, tenta colocar a imagem com a URI absoluta...
Klaus Paiva
Conheça também: Taperás

#14 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Não informado
  • Localidade:BH - MG

Posted 01/07/2005, 16:13

Pelo modo em que o sistema está estruturado não vai adiantar com a URI absoluta, pois eu nunca vou saber onde é que os arquivos estão, pois esse caminho é definido pelo usuário, pode ser na própria pasta do site, como também na pasta Meus documentos, e aí só com caminho virtual mesmo. É pra intranet :D. Caso assim(o modo que estou fazendo) fique inviável mostrar as imagens, alguma outra idéia? Do tipo, salvar todas as imagens na memória, em uma Array se é que tem jeito em JS, e ir randomizando as imagens.. ??

:wacko:
Eduardo Batista




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq