Ayuda con un pequeño codigo

jakmm11

Piedra
Usuario de Piedra
Mensajes
72
Puntuación de reacción
0
lo que tengo es este codigo donde te redirecciona en 10 segundos ala url indicada

HTML:
<script>
var targetURL="https://foro20.com/"
 
var countdownfrom=10
 
var currentsecond=document.redirect.redirect2.value=countdownfrom+1
function countredirect(){
if (currentsecond!=1){
currentsecond-=1
document.redirect.redirect2.value=currentsecond
}
else{
window.location=targetURL
return
}
setTimeout("countredirect()",1000)
}
 
countredirect()
</script>

Lo que quiero hacer es que envés de redirigir ala url, me muestre la url despues de 10 segundos.
 
Mensajes
115
Puntuación de reacción
0
Si quieres que en 10 seg se muestre una url es mucho más facil de la siguiente manera:

Código:
setTimeout("mostrar()",10000);

function mostrar(){
    alert("http://www.foro20.com");
    // si lo que quieres es mostrar la url actual puedes hacerlo con:
    alert(document.URL);
}

Y ese setTimeout lo puedes poner en cualquier onClick, o en el onload del body si quieres que sea a los 10 seg de cargar la página.
 

jakmm11

Piedra
Usuario de Piedra
Mensajes
72
Puntuación de reacción
0
Si quieres que en 10 seg se muestre una url es mucho más facil de la siguiente manera:

Código:
setTimeout("mostrar()",10000);

function mostrar(){
    alert("http://www.foro20.com");
    // si lo que quieres es mostrar la url actual puedes hacerlo con:
    alert(document.URL);
}

Y ese setTimeout lo puedes poner en cualquier onClick, o en el onload del body si quieres que sea a los 10 seg de cargar la página.

Gracias.
pero como hago para que la url aparezca en la misma pagina. osea como en <?php echo ?>.. lo que quiero es que en mi pagina de descarga aparezca la url despues de 10 segundos
 

defcon3

Piedra
Usuario de Piedra
Mensajes
30
Puntuación de reacción
0
Es un poco más complicado.

Usando jQuery (que es lo más usado en web):

Creas un div oculto en HTML: <div id="url" style="visibility:hidden;"></div>
Anades el JS en la funcion anterior:
function mostrar(){
$("#url").html("Texto de la url").show();
}
 
Mensajes
115
Puntuación de reacción
0
Gracias.
pero como hago para que la url aparezca en la misma pagina. osea como en <?php echo ?>.. lo que quiero es que en mi pagina de descarga aparezca la url despues de 10 segundos


Entonces sustitulle el alert(document.URL); por document.write(document.URL);

También te vale el ejemplo de decon3 o si no quieres utilizar jquery puedes hacerlo con javascript simple.
HTML:
<div id="capaMostrarUrl">
</div>
<script>

function mostrar(){
document.getElementById("capaMostrarUrl").innerHTML=document.URL;
}

</script>

En este caso la url aparecerá en la capa marcada con la id="CapaMostrarUrl" si quieres que aparezca en otro sitio simplemente ponle un identificador y referencialo desde getElementById();

Espero que te sirva :mola:
 

jakmm11

Piedra
Usuario de Piedra
Mensajes
72
Puntuación de reacción
0
Entonces sustitulle el alert(document.URL); por document.write(document.URL);

También te vale el ejemplo de decon3 o si no quieres utilizar jquery puedes hacerlo con javascript simple.
HTML:
<div id="capaMostrarUrl">
</div>
<script>

function mostrar(){
document.getElementById("capaMostrarUrl").innerHTML=document.URL;
}

</script>

En este caso la url aparecerá en la capa marcada con la id="CapaMostrarUrl" si quieres que aparezca en otro sitio simplemente ponle un identificador y referencialo desde getElementById();

Espero que te sirva :mola:
...........................................................
Este es el codigo que tengo:
este es un contador que aparece en la pagina.
HTML:
form name="redirect">
<input class="textcontador" size="1" name="redirect2"/>
y este es JS don de merirecciona a la variable $p.
HTML:
<script>
var targetURL="<?php echo $p; ?>"
 
var countdownfrom=10
 
var currentsecond=document.redirect.redirect2.value=countdownfrom+1
function countredirect(){
if (currentsecond!=1){
currentsecond-=1
document.redirect.redirect2.value=currentsecond
}
else{
window.location=targetURL
return
}
setTimeout("countredirect()",1000)
}
 
countredirect()
</script>
¿como hago para que me muestre la variable $p, cuando el contador llegue a cero.?
 
Mensajes
115
Puntuación de reacción
0
El código que tienes es redundante y poco claro, es mucho más simple que eso, simplemente es lo que te explico en el post de arriba.
No es aconsejable que una función se llame a si misma, utiliza setTimeout únicamente una vez con 10 seg en lugar de 10 veces con 1 seg.

Saludos
 
Última edición:

kj_

Mensajes
24
Puntuación de reacción
0
A ver si es algo como esto lo que buscas:

Código:
<div id="ncd">10</div>

<div id="finaluri"></div>

<script>

var targetURL='<?php echo $p; ?>';

var cd=document.getElementById('ncd');

var counterdaemon=setInterval(
	function(){
		if (parseInt(cd.innerHTML)>0){
			cd.innerHTML=parseInt(cd.innerHTML)-1;
		}else{
			// window.location=targetURL; // esta linea redireciona
			document.getElementById('finaluri').innerHTML=targetURL;
			clearInterval(counterdaemon);
		}
	}
,1000);
</script>

kj
 
Arriba