Comunidad de diseño web y desarrollo en internet online

Pasar parámetro en una función

Citar            
MensajeEscrito el 30 Jul 2014 12:54 pm
Hola.
Hay alguna forma de pasar la variable num como parámetro a la función contador?.

Código Javascript :

....
function contador(seg) { 
  num--; 
document.getElementById(seg).innerHTML=num; 
}.......................
<script type="text/javascript">
num=60; 
a="seg1"; 
setInterval('contador(a)',1000);............

Gracias y Saludos

Por Sont

16 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Jul 2014 03:01 pm
declara num como global...

Código Javascript :

var num=60;
function contador(seg) { 
  num--; 
  document.getElementById('seg1').innerHTML=num; 
    
    if(num == 0){
        clearInterval(i);
        document.getElementById('seg1').innerHTML='acabó'; 
    }
}

var i = setInterval(contador, 1000);


pasando parámetros sería

Código Javascript :

var num=60;
function contador(id, seg) { 
  num--; 
  document.getElementById(id).innerHTML=num+seg; 
    
    if(num == 0){
        clearInterval(i);
        document.getElementById(id).innerHTML='acabó'; 
    }
}

var i = setInterval(contador, 1000, 'seg1', ' segundos');

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

chrome
Citar            
MensajeEscrito el 30 Jul 2014 05:36 pm
Gracias Nacho por la contestación, pero no me sirve el código, tu me pasas la palabra 'segundos' como parámetro y yo quiero la variable num como parámetro, yo había intentado algo parecido pero no me pasa la variable num, y dada mi poca experiencia no tengo claro que puedo hacer, posiblemente una tonteria.
He puesto una demo en Demo y se puede ver el codigo fuente, el contador no avanza, cualquier sugerencia se agradece.

Sont

Por Sont

16 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Jul 2014 09:23 pm
Para qué quieres pasar num como parámetro?

Lo único que haces es decrementar la variable.

countDown

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

chrome
Citar            
MensajeEscrito el 30 Jul 2014 10:04 pm

nasho escribió:

Para qué quieres pasar num como parámetro?

Lo único que haces es decrementar la variable.

countDown


Mi idea era pasar num como parámetro para ejecutar dinámicamente varias veces en la misma pagina la función contador() con diferentes valores num.
Claro siempre puedo reescribir todo el código de la función con diferentes nombres de función y diferentes nombres de variables es decir:

Código Javascript :

function contador1(uno){
var num1=60; num1--;    bla bla bla}
function contador2(dos){
var num2=90; num2--;    bla bla bla}
function contador3(tres){
var num3=120; num3--;    bla bla bla}
......
var num1;
setInterval(contador1, 1000, div1){bla.bla.bla}
var num2;
setInterval(contador2, 1000, div2){bla.bla.bla}
var num3;
setInterval(contador3, 1000, div3){bla.bla.bla}.......





No se si me he explicado bien.
¿alguna teoría/sugerencia para evitar repetir las funciones?

Cualquier comentario me servirá de mucho.

Gracias
Sont

Por Sont

16 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Jul 2014 10:32 pm
Reedito el codigo que esta mal, pero creo que la idea se entiende:

function contador1(uno){
var num1; num1--; bla bla bla}
function contador2(dos){
var num2; num2--; bla bla bla}
function contador3(tres){
var num3; num3--; bla bla bla}
......
var num1=60; var num2=90; var num3=120;
setInterval(contador1, 1000, div1);
setInterval(contador2, 1000, div2);
setInterval(contador3, 1000, div3);.......

Por Sont

16 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Jul 2014 10:43 pm

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

chrome
Citar            
MensajeEscrito el 31 Jul 2014 12:59 pm

nasho escribió:



Ok Nacho, perfecto era lo que buscaba.
Gracias Sont

Por Sont

16 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.