• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

String und innerHtml

K

ktver

Guest
Hallo,

ich habe mal eine Frage.
Ich habe ein Infobild. Wenn auf dieses geklickt wird, soll eine Divbox angezeigt werden. Diese Divbox enthält Text.
Das funktioniert alles super.

Aber, wenn sich im besagten Text HTML-Code befindet, funktioniert es nicht mehr.

Hier das Infobild:
PHP:
echo '<img class="icon_info" src="../_images/icon/icon_info.gif" title="" onMouseOver="infoShow(event,'" . $txt . "');" onMouseOut="infoHidden();" href="javascript:void(0);">';

$txt ist eine PHP-Variable.

In dieser könnte zum Beispiel stehen:

Dies ist ein <span id="text_red">Beispieltext</span>.

Und sobald <span id="text_red"> im String steht, geht es nicht mehr.

Woran kann das liegen?
 
Und bei mehrzeiligem String wird gar nichts angezeigt.

Hier wäre der Code:
Code:
function infoShow(e,Inhalte,offsetX,offsetY)
{
      if (offsetX) {offsetx=offsetX;} else {offsetx=20;}
      if (offsetY) {offsety=offsetY;} else {offsety=0;}
      var PositionX = 0;
      var PositionY = 0;
      if (!e) var e = window.event;
      if (e.pageX || e.pageY)
      {
              PositionX = e.pageX;
              PositionY = e.pageY;
      }
      else if (e.clientX || e.clientY)
      {
              PositionX = e.clientX + document.body.scrollLeft;
              PositionY = e.clientY + document.body.scrollTop;
      }
      document.getElementById("infoBoxContent").innerHTML = Inhalte;
      document.getElementById('infoBox').style.left = (PositionX+offsetx)+"px";
      document.getElementById('infoBox').style.top = (PositionY+offsety)+"px";
      document.getElementById('infoBox').style.visibility = "visible";
}


Im Quelltext steht:
... onMouseOver="infoShow(event,'Test<span class=\"txt_red\">Test</span>Test');" onMouseOut="infoHidden();" ...

Das wäre doch richtig oder?
 
Zuletzt bearbeitet von einem Moderator:
Zurück
Oben