Wertausgabe einer JavaScript-Funktion
naeko
- html
0 Jörg Peschke- javascript
0 naeko0 Griever0 naeko0 Vinzenz Mai0 naeko
0 Jörg Peschke
Hallo,
ich habe folgendes Problem:
ich habe eine JS-Funktion, die mir ein Wert berechnet.
Diesen Wert möchte ich in HTML in einem <div> unterbringen.Dieser <div> enthält bereits Inhalt und wird durch den Wert der JS-Funktion einfach überschrieben. Ich möchte diesen Wert aber sozusagen anhängen (also den alten nicht löschen).Ich mache es bis jetzt so:
js-funktion:
function wert()
{
var wert = .....; //hier wird wert berechnet
document.getElementById("header").innerText = wert;
}
html:
...
<body onload="wert()">
<div id="header">
hier kommt verschiedener Text,
<br>
der aber durch Asugabe der JS-Funktion ersetzt wird.
</div>
...
Moin,
document.getElementById("header").innerText = wert;
document.getElementById("header").innerText += wert;
sollte den Text anhängen.
Viele Grüße,
Jörg
Moin,
document.getElementById("header").innerText = wert;
document.getElementById("header").innerText += wert;sollte den Text anhängen.
Viele Grüße,
Jörg
also an sich funktioniert das prima.
nur wird mein im <div> definiertes Layout (über CSS) dadurch komlett zerschossen. Kann man das irgendwie abstellen?
Wie wird denn dein Layout zerschossen?
Gruß aus Gotha
Ggriever-Homepage
Wie wird denn dein Layout zerschossen?
Gruß aus Gotha
Ggriever-Homepage
naja....wenn man hier bilder einfügen könnte, würde ich paar screenshots zeigen.
also komisch find ich, dass der quelltext-anzeiger mir den gleichen code zeigt (egal ob ich js-funktion aufrufe oder nicht),an sich ist es so:
css-datei
#header {
background-image: url(../images/logo.gif);
}
ausgabe der html-datei:
<div id="header">
<div class="top_row">
<div class="logo">
<a href = "http://www.www.de"><img src="/useTiles/images/logo.gif" alt = "LOGO"/></a>
</div>
<div class="top_nav">
<ul>...
durch aufruf der js-funktion wird z.B. das Logo nicht angezeigt
Hallo
naja....wenn man hier bilder einfügen könnte, würde ich paar screenshots zeigen.
kann man, wie es geht steht in der Hilfe.
also komisch find ich, dass der quelltext-anzeiger mir den gleichen code zeigt (egal ob ich js-funktion aufrufe oder nicht),an sich ist es so:
am Quelltext ändert sich ja auch nichts. Schau Dir das mal mit dem DOM-Inspector des Firefox an.
Freundliche Grüße
Vinzenz
Hallo
naja....wenn man hier bilder einfügen könnte, würde ich paar screenshots zeigen.
kann man, wie es geht steht in der Hilfe.
also komisch find ich, dass der quelltext-anzeiger mir den gleichen code zeigt (egal ob ich js-funktion aufrufe oder nicht),an sich ist es so:
am Quelltext ändert sich ja auch nichts. Schau Dir das mal mit dem DOM-Inspector des Firefox an.
Freundliche Grüße
Vinzenz
ok...danke...kann ich auch Grafiken einbinden, wenn ich sie lokal auf der Festplatte habe?welche uri schreib ich denn?localhost oder einfach c:\image.gif
Moin,
ok...danke...kann ich auch Grafiken einbinden, wenn ich sie lokal auf der Festplatte habe?welche uri schreib ich denn?localhost oder einfach c:\image.gif
Nope. Die musst Du schon auf irgendeinen Web-Server stellen, der von außen erreichbar ist.
Hallo,
also an sich funktioniert das prima.
nur wird mein im <div> definiertes Layout (über CSS) dadurch komlett zerschossen. Kann man das irgendwie abstellen?
Also, ich weiss nicht, wie sich innerText genau verhält...ich benutze eigentlich ausschliesslich innerHTML, vielleicht ist das etwas besser.
Du hast allerdings immer das Problem, dass es manchen Browsern in Spezialfällen nicht schmeckt, wenn Du auf diese Weise im Quellcode rumbohrst.
Als etwas robuster geltenDOM-Methoden zurVeränderung des Quellcodes:
var textNode = document.createTextNode("Dein neuer Text");
document.getElementById("Ziel-Div").appendChild(textNode);
(ohne Gewähr).
Wenns damit auch nicht besser geht, kann man nur versuchen, dem Browser ein bisschen "Vesrschnaufpause" beim rendern zu gönnen, z.b.:
usw.
Hierfür gibt es leider kein Patent-Rezept - hilft nur Probieren, ein bisschen Kenntnis von Browser-Macken und "Einfühlungsvermögen" für die Render-engine des Browsers :)