Ticker/Laufschrift
merlina
- javascript
Hallo liebe JavaScript'ler,
kann mir jemand sagen, warum das folgende Script nicht funktioniert? Habe es in eine .php Seite integrieren wollen, kann es daran liegen?
Das "Formular" wird angezeigt, aber die Laufschrift kommt nicht!
Danke schön für eure Antworten
Merlina
<script language="JavaScript">
<!--
var laufschrift="NEWSLETTER abonnieren";
var start = 0;
var stop = laufschrift.length;
function laufschrift() {
document.ticker.ticker.value = "" + laufschrift.substring(start,stop) + " " + laufschrift.substring(0,start);
start++;
if(start >= stop) { start = 0; }
setTimeout("laufschrift()", 100);//weiter nach einer Zehntelssekunde
}
//-->
</script>
</head>
<?php Hier habe ich eine PHP-Anweisung rausgenommen ?>
<body bgcolor="#FFFFCC" text="#000000" marginwidth="0" marginheight="0" leftmargin="0" topmargin="0" onload="window.focus()" onload="laufschrift()">
<table width="300" border="0" cellspacing="0" cellpadding="0" height="350">
<tr>
<td width="30"> </td>
<td width="270" valign="top">
<form>
<div align="center">
<input type="text" name="ticker" onFocus="this.blur()" size="30">
</div>
</form>
<?php
kann mir jemand sagen, warum das folgende Script nicht funktioniert? Habe es in eine .php Seite integrieren wollen, kann es daran liegen?
Nein. PHP läuft auf dem Server, JS auf dem Client.
Das "Formular" wird angezeigt, aber die Laufschrift kommt nicht!
Wenn Du im JS schon das Formular "ticker" ansprichst, dann nenn' es auch so... Achte außerdem auf das korrekte Öffnen und Schließen von PHP-Delimitern.
<snip>Müll entsorgt</snip>
kannst du ein bisschen konkreter werden? blicke nämlich unterdessen selber nicht mehr ganz durch, was ticker heissen soll und was laufschrift....
hi,
kannst du ein bisschen konkreter werden? blicke nämlich unterdessen selber nicht mehr ganz durch, was ticker heissen soll und was laufschrift....
nur so viel:
document.ticker.ticker.value = [...]
hier versuchst du, auf ein feld namens ticker in einem formular namens ticker zuzugreifen. (finde ich ungünstig, für beide die selben namen zu verwenden.)
<form>
<input type="text" name="ticker" onFocus="this.blur()" size="30">
</form>
dein formular hat aber noch nicht einmal einen namen - also bessere zuerst mal an dieser stelle nach.
gruss,
wahsaga
Hallo S.,
<snip>Müll entsorgt</snip>
Das Selfforum braucht keinen Usenet-Diskussionsstil, also bitte lasse solche beleidigenden Seitenhiebe. Danke.
Mathias
<snip>Müll entsorgt</snip>
Das Selfforum braucht keinen Usenet-Diskussionsstil, also bitte lasse solche beleidigenden Seitenhiebe. Danke.
Mir hat das Usenet immer sehr geholfen. Falls die ersten Nutzer nachweislich durch eine nach einem schweren Zusammenbruch ob eines meiner Teile-des-Zitats-entfernt-Markers eingeworfenen Überdosis Psychopharmaka unrehabilitierbar umnachtet sein sollten, und in Folge dessen leider keine hier zu lösenden Probleme mehr posten können, und somit zur Austrocknung dieses von Kreaturen wie mir besiedelten Sumpfes beitragen sollten - dann werde ich auch verendet sein und nicht mehr so schlimme böse Dinge tun können. Somit: jede Beleidigung schadet auch mir, und ist somit vollkommen vertretbar. In China essen sie Hunde. In Liebe :-x
Hallo,
<snip>Müll entsorgt</snip>
Das Selfforum braucht keinen Usenet-Diskussionsstil, also bitte lasse solche beleidigenden Seitenhiebe. Danke.
Mir hat das Usenet immer sehr geholfen. Falls die ersten Nutzer nachweislich durch eine nach einem schweren Zusammenbruch ob eines meiner Teile-des-Zitats-entfernt-Markers
Nö, es ging um deine plumpe Metamitteilung »dein Code ist Müll«, nicht um das <snip> an sich.
eingeworfenen Überdosis Psychopharmaka unrehabilitierbar umnachtet sein sollten, und in Folge dessen leider keine hier zu lösenden Probleme mehr posten können,
Die meisten werden dem Forum wohl eher sang- und klanglos den Rücken zukehren, selbst wenn sie sich nicht direkt pikiert fühlen, sondern eher irritiert, dabei handelt es sich keinesfalls um verweichlichte Mimosen und es bedarf auch keiner offensichtlichen seelischen Grausamkeit oder gezielten »Wegekeln«.
und somit zur Austrocknung dieses von Kreaturen wie mir besiedelten Sumpfes beitragen sollten - dann werde ich auch verendet sein und nicht mehr so schlimme böse Dinge tun können.
Ich sehe hier wahrlich keinen Ansatz für Sarkasmus.
Im Übrigen wird sich die Welt - in gewisser Hinsicht bedauernswerterweise - sowieso weiterdrehen, somit wird das Selfforum auch ohne rege Teilnahme Hilfesuchender weiterexistieren, allerdings passt dann die Metapher der Austrocknung durchaus, die zwangsläufige Verendung hingegen nicht.
Somit: jede Beleidigung schadet auch mir, und ist somit vollkommen vertretbar.
Angesichts deines Verhaltens musst du demnach Masochist sein?
Mathias
Angesichts deines Verhaltens musst du demnach Masochist sein?
Wäre ich sonst hier? <EOT />
Hallo Merlina,
wenn du den Wert eines bestimmten Eingabefelds in einem bestimmten Formular ansprechen willst, lautet das Schema (bzw. ein mögliches Schema) folgendermaßen:
document.formularname.feldname.value
»formularname« ist dabei der Wert des name-Attributs des form-Elements,
»feldname« ist der Wert des name-Attributs des form-Elements.
Du musst also entsprechend dem form-Element ein name-Attribut geben bzw. in dessen Start-Tag notieren, beispielsweise <form name="tickerformular">, dann wäre document.tickerformular.ticker.value angemessen.
Das ist unter http://selfhtml.teamone.de/javascript/objekte/forms.htm#allgemeines beziehungsweise http://selfhtml.teamone.de/javascript/objekte/elements.htm#allgemeines beschrieben.
Ein zweiter Punkt ist, dass eine Funktion nicht denselben Namen wie eine andere Variable haben darf. »laufschrift« ist bei dir der Name der Variable mit dem Text, der angezeigt werden soll, und gleichzeitig der Name der Funktion:
var laufschrift="NEWSLETTER abonnieren";
...
function laufschrift() {
...
Einen davon musst du ändern und den Code entsprechend anpassen (beispielsweise »laufschrifttext« für den String).
Anstatt
onload="window.focus()" onload="laufschrift()"
solltest du
onload="window.focus(); laufschrift()"
schreiben.
Mathias
Lieber Mathias,
Hat nach einigem Pröbeln wunderbar geklappt! Danke dass du dir soviel Zeit genommen hast!
Schöner Abend
Merlina