Mit JS a-Tag verändern(innerHTML, outerHTML), marquee-Tag schreiben?

... komplette Frage anzeigen

3 Antworten

Offenbar willst du den Benutzer auf etwas hinweisen, wenn er sich im Safari im privaten Modus befindet? Die Bedingung kannst du selbst codetechnisch formulieren?

Marquee ist deprecated, auch wenn es bei dir noch funktioniert. Darüber hinaus wird Lauftext heutzutage nicht mehr gerne gesehen. Ich würde dir empfehlen, auf eine andere Lösung auszuweichen.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Ucanaskme
28.11.2016, 15:28

Nein, nicht ich, meine Kollegen :-) 

Es geht nicht um eine offizielle Homepage, sondern eine Art Intranet. Marquee wird bei uns deshalb solange unterstützt, wie wir es gebrauchen, vereinfacht ausgedrückt. Aber sonst könnten wir uns auch so eine Art "Lauftext" selber basteln, o.ä., was genauso aussieht, daran sollte es letzlich nicht scheitern.

Hättest Du denn sonst eine Idee zu meiner eigentlichen Frage? 

0

Du kannst den Teil den du ändern willst in einen DIV Container packen, ihm eine ID geben und dann folgendermaßen den Inhalt ändern. Nehmen wir an dein HTML sieht im body jetzt so aus:

<div id="container">
 <a href="deinlink">Link</a>
</div>

Dann kannst du ganz einfach den inneren HTML des DIV's (also dein <a> tag) so ändern:

let container = document.getElementById("container");
container.innerHTML = '<a href="neuerLink">NeuerLink</a>';

Dabei muss es natürlich kein neuer Link sein sondern könnte eben alles sein was du willst.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Ucanaskme
27.11.2016, 16:56

Cool, danke für die schnelle Antwort! Ich probiere es gleich mal aus, melde mich noch mal

1

Gebe deinem Container-Element eine Id (bspw. container). Innerhalb deines Skriptes kannst du diese Funktion nutzen, um ein marquee-Element dynamisch anzuhängen:

function addMarquee() {
  var container = document.getElementById("container");
  var marquee = document.createElement("marquee");
  marquee.setAttribute("direction", "left");
  var text = document.createTextNode("test");
  marquee.appendChild(text);
container.appendChild(marquee);
}
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Ucanaskme
28.11.2016, 14:03

Habe es gleich mal ausprobiert. Es klappt jedoch nicht, führe ich die Funktion aus, passiert nichts und die timer() Funktion geht auch nicht mehr- statt eine Zahl steht dort dann undefinded. 

0

Was möchtest Du wissen?