Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: Ori-chan en 18 Diciembre 2012, 21:54 pm



Título: [javascript] Problema
Publicado por: Ori-chan en 18 Diciembre 2012, 21:54 pm
Código
  1. <html>
  2. <head>
  3. <title>Se supone que es sencillo...</title>
  4. </head>
  5. <script type="text/javascript">
  6. n=0;
  7. function suma()
  8. {
  9. n++;
  10. document.write(n);
  11. }
  12. </script>
  13. <body onclick="suma()">
  14. </body>
  15. </html>
  16.  


Problema:
Cuando pulso el botón izquierdo del ratón aparece un 1 y ya no vuelve a pasar nada. Se supone que puede pulsarse infinitas veces y que aparecerá el numero de veces que lo has pulsado.


Saludos!!  ;D


Título: Re: [javascript] Problema
Publicado por: #!drvy en 18 Diciembre 2012, 23:55 pm
Eso es porque usas document.write. La función sobre escribe el documento entero por tanto borra cualquier tag (html,head,body etc..) y solo muestra lo que has puesto.

Lo correcto en este caso seria darle un ID al <body> y cambiar su valor mediante innerHTML.

Código
  1. <html>
  2. <head>
  3. <title>Se supone que es sencillo...</title>
  4. </head>
  5. <script type="text/javascript">
  6. var n = 0;
  7. function suma()
  8. {
  9. n++;
  10. document.getElementById('cuerpo').innerHTML = n;
  11. }
  12. </script>
  13. <body id="cuerpo" onclick="suma()">
  14. Clickea me.
  15. </body>
  16. </html>

Saludos


Título: Re: [javascript] Problema
Publicado por: Ori-chan en 19 Diciembre 2012, 07:34 am
Oh! Muchas gracias. No sabia que se podia hacer lo de ".innerHTML"
  :)