Nueva pregunta

Pregunta:

Fecha: 25-07-2015 04:36:49 (En Español)

Temporizador en JQuery[Resuelta]

Me ayudas con este temporizador en jquery?

La verdad no se que sea un temporizador, pero bueno me ayudas con esto?

$(document).ready(function() {
var anun = document.createElement("div");
anun.setAttribute("id", "publicy");
anun.setAttribute("class", "publicy_decoration");
anun.innerHTML = ('Espera 20 Segundos Para Ver El Video o Registrate y Evita Los Anuncios ^^ <br /><button id="dialog_regis_popup" class="deco_bx">Registrarse</button>');
document.getElementById("block_video").appendChild(anun);

var login_popup_dialog = document.createElement("div");
login_popup_dialog.setAttribute("id", "dialog_popup_login_yao");
login_popup_dialog.setAttribute("class", "dialog_popup_login");
login_popup_dialog.setAttribute("style", "display:none");
login_popup_dialog.innerHTML = ('<span id="close_popup">X</span>')
document.getElementById("login_buble").appendChild(login_popup_dialog);

$("#dialog_regis_popup").click(function(e) {
$("#dialog_popup_login_yao").css("display","");
e.preventDefault();
window.clearInterval(ini);
});

$("#close_popup").click(function(i) {
$("#dialog_popup_login_yao").css("display","none");
i.preventDefault();
setInterval("player_config()", 1000);
});


var ini = window.setInterval("player_config()", 1000);
});

//optionals menu options player for unresgister users.
var time = 25;
var player_config =  function() {
time--;
if(time<0) {

} else if(time < 4 && time > 0) {
document.getElementById("seg").style.color = "rgb(255,0,0)";
seg.innerHTML=time;
} else if(time===0) {
alert("over :P");
$("body").css("background","#000");
document.getElementById("seg").style.color = "rgb(255,0,0)";
seg.innerHTML=time;
} else if(time==19 || time>11) {
document.getElementById("seg").style.color="rgb(0,255,0)";
seg.innerHTML=time;
} else if(time==11 || time<11) {
document.getElementById("seg").style.color="rgb(255,255,0)";
seg.innerHTML=time;
} else {

}
}


vale si comprenden bien javascript y jQuery veran que hace este código y hasta ahi todo perfecto no me falla al darle click al boton con el id="dialog_regis_popup" que lo traje con el código de arriba.

<div id="block_video"></div><span id="seg">20</span> <span id="login_buble"></span> // este es el código lo que va en el body


Bueno sabiendo eso deja les explico mejor lo que no me sale, este codigo de abajo hace que al darle
$(document).ready(function() {
// este para el el intervalo que se inicio con el setInterval
$("#dialog_regis_popup").click(function(e) {
$("#dialog_popup_login_yao").css("display","");
e.preventDefault();
window.clearInterval(ini);
});

// este al darle click a una X que puse en un popup inicia de nuevo la function player_config()
$("#dialog_regis_popup").click(function(e) {
$("#dialog_popup_login_yao").css("display","");
e.preventDefault();
window.clearInterval(ini);
});

$("#close_popup").click(function(i) {
$("#dialog_popup_login_yao").css("display","none");
i.preventDefault();
setInterval("player_config()", 1000);
});

var ini = window.setInterval("player_config()", 1000); // esto inicia automáticamente la cuenta regresiva
});


bueno eso me funciona bien pero solo una vez :/ no habra manera que al darle click al boton se detenga y luego al darle click a la x se vuelva a iniciar pero que al darle clicks de nuevos a esos dos me funcione infinitamente claro si llega a 0 la cuenta pues no verdad :) porfa ayuden por mas que busque nada encontre u.u y lo necesito para un proyecto.

Saludos
Etiquetas: Javascript - JQuery - Pregunta Votos: 1 - Respuestas: 3 - Vistas: 15 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 28-07-2015 03:43:53 exacto :) o capturar el evento click y con un bucle while poner el limite de veces que esto va a funcionar n.n muy buena observacion Txema   Votos: 1 - Link respuesta
     
  • Fecha: 31-07-2015 09:35:01 Creo que lo que podes hacer es crear un estado de activado y desactivado. Esto podes hacerlo con una clase llamado por ej. "activado" y luego comprobar si esta clase esta presente en el elemento con la funcion .hasClass() de jquery. Esta funcion devuelve true si la clase esta presente y false si no lo esta.
    Podes guardar el estado en una variable por ej. $estado = $("#tuElemento).hasClass("tuClase");
    Luego con un if comprobas si el estado es true o false.
    Si el estado es true (la clase esta presente y el temporizador esta corriendo) entonces removes la clase con .removeClass("activado") y detenes el temporizador. Si el estado es false (la clase no esta presente y el temporizador esta detenido) entonces agregas la clase con .addClass("activado") y pones a correr el temporizador. Creo que mas o menos por ahi va el tiro.
      Votos: 3 - Link respuesta
     
  • Fecha: 01-08-2015 14:47:13 creo que esta muy bien tu idea solo que to ya lo habia resuelto con el ciclo while y capturando en evento click mas funcional y mejor ya que funciona si lo quieres hacer en jQuery o en javascript si tanto problemas n.n   Votos: 1 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com