OnCklick Counter als Text/Link - Javascript

casiopaier

Grünschnabel
Hallo an alle erstmal******,

ich weiss das dieses Thema gefühlte 2.000.000 mal besprochen wurde..., aber...
Ich komme einfach nicht weiter um einen Counter an meine bedürfnisse anzupassen.
Googel seit tagen durchsucht, nur das was ich haben möchte ist irgentwie nicht dabei.

Folgender Wunsch:

Klick auf Text-Link (Text = "Download") der ein Hintergrundbild zugewiesen bekommen hatt,
ein Counter zählt von 10 auf 0 herrunter (Bitte warten 3,2,1...)
neune Text-Link "Download Starten" erscheint

Das ganze solte ohne automatische Weiterleitung und mit textlink, ohne "Button" erfolgen.
Wie geht das?

habe hier mal 2 Counter-Codes:
Code:
<head>
<script type="text/javascript">
document.write('<style type="text/css">#timed{display:none;}<\/style>')

function delay_link(){
var d=delay_link, t=document.getElementById('timed');

if(d.c&&d.c.nodeValue.replace(/[^\d]*/,'')-1>0){
d.c.nodeValue='\xa0\xa0'+(d.c.nodeValue.replace(/[^\d]*/,'')-1);
setTimeout('delay_link()', 1000)
return;
}
else if(!d.c){
d.c=document.createTextNode('10');
t.parentNode.insertBefore(d.c,t);
setTimeout('delay_link()', 1000)
return;
}
d.c.nodeValue='';
t.style.display='inline';
}
</script>
</head>
<body>
<div class="cent"><a id="timed" href='http://www.download.com'>Download Starten</a></div>
<script type="text/javascript">delay_link();</script>
</body>

oder

Code:
<head>
<script type='text/javascript'>

var homepage = "http://www.BLABLA2.de";
var zeit = 10;
var text = "Sie werden weitergeleitet"
var time = zeit + 1;
var s = 0;

function countdownstart() {
if (s == 0) ( countdown() ) }

function stopp() {
time = 0;
setTimeout('stopp()',10); }

function countdown() {
s = 1;
if (time != 0) { time = time -1; document.counter.text.value = "Bitte warten " + time + " Sek."; setTimeout('countdown()',1000);}
if (time == 0) { location=homepage; document.counter.text.value=text } }

function cont() {
	document.write('<form name="counter">');
  	document.write('<input name="text" value="Download" onclick="countdownstart()">');
	document.write('</form>');
}

</script>
<script type="text/javascript">cont();</script>

1000 Dank für eine Antwort!
 
Sollte eigentlich ganz einfach sein:

Javascript:
<script language="javascript" type="text/javascript">
function download(sek) {
	document.getElementById("link").innerHTML = "Bitte <b>" + sek + "</b> Sekunden warten.";

	if (sek <= 0) {
		clearTimeout(counter);
		document.getElementById("link").innerHTML = '<a href="datei_zum_herunterladen.txt" target="_blank">Download starten</a>';
	} else {
		sek--;
		counter = window.setTimeout("download(" + sek + ")", 1000);
	}
}
</script>
HTML:
<div id="link"><a href="#" onclick="download(10); return false;">Download</a></div>
 
Zurück