Michael: Sehr seltsames Problem...

Dieses Script soll einige Elemente sichtbar machen und richtig positionieren. Alle Elemente werden angezeigt und richtig positioniert, nur das Element dessen Zeile ich mit !!! markiert habe nicht. Im IE funktionierts, aber im NS 6 nicht.

if(document.getElementById('lexikon'+which).style.height)
    var h=parseInt(document.getElementById('lexikon'+which).style.height)-8;
    document.getElementById(lexikonOpened).style.visibility='hidden';
document.getElementById(lexikonOpened+'eckeOL').style.visibility='hidden';
document.getElementById(lexikonOpened+'eckeOR').style.visibility='hidden';
document.getElementById(lexikonOpened+'eckeUR').style.visibility='hidden';
document.getElementById(lexikonOpened+'eckeUL').style.visibility='hidden';
    lexikonOpened='lexikon'+which;
  !!!  document.getElementById('lexikon'+which).style.top=mouseY;  !!!
  !!!  document.getElementById('lexikon'+which).style.left=mouseX; !!!
    document.getElementById('lexikon'+which).style.visibility='visible';
document.getElementById('lexikon'+which+'eckeOL').style.visibility='visible';
    document.getElementById('lexikon'+which+'eckeOL').style.top=mouseY;
    document.getElementById('lexikon'+which+'eckeOL').style.left=mouseX;
document.getElementById('lexikon'+which+'eckeOR').style.visibility='visible';
    document.getElementById('lexikon'+which+'eckeOR').style.top=mouseY;
    document.getElementById('lexikon'+which+'eckeOR').style.left=mouseX+192;
document.getElementById('lexikon'+which+'eckeUR').style.visibility='visible';
    document.getElementById('lexikon'+which+'eckeUR').style.top=mouseY+h;
    document.getElementById('lexikon'+which+'eckeUR').style.left=mouseX+192;
document.getElementById('lexikon'+which+'eckeUL').style.visibility='visible';
    document.getElementById('lexikon'+which+'eckeUL').style.top=mouseY+h;
    document.getElementById('lexikon'+which+'eckeUL').style.left=mouseX;

  1. hallo Michael,
    <!-- eine Anrede macht sich doch gut, gelle ? //-->

    !!!  document.getElementById('lexikon'+which).style.top=mouseY;  !!!
      !!!  document.getElementById('lexikon'+which).style.left=mouseX; !!!
        document.getElementById('lexikon'+which).style.visibility='visible';

    Versuch das mal zu "quoten", also in Hochkommas bzw. Anführungszeichen einzuschließen:
    document.getElementById('lexikon'+which).style.left='mouseX';

    möglicherweise ist auch "mouseX" nicht definiert oder nicht korrekt definiert.

    Ansonst hilft etwas Lektürevergleich: http://selfhtml.teamone.de/javascript/objekte/style.htm

    Grüße aus Berlin

    Christoph S.
    <!-- macht sich auch gut, so eine Verabschiedung, gelle? //-->

    1. Hallo zusammen <!-- muss ich noch "Sehr geehrt" schreiben? ;-) //-->

      an unkorrekter Definition von mouseX/mouseY kann es nicht liegen, dann würden die anderen Felder nicht vollkommen korrekt angezeigt. Wie gesagt, das Problem ist SEHR seltsam, denn im IE funktioniert die genau gleiche Version vollkommen richtig.

      lexikonxxx ist eine Einzellige Tabelle, hier die Definition:

      function LexikonEintrag(name, eintrag, height){
        lexikonOpened="lexikon"+name;
        this.htmltag='<table id="lexikon'+name+'" class="lexikon" bgcolor='+fgcolor+' style="position:absolute; visibility:hidden; width:200px; height:'+height+'px; left:0px; top:0px"><tr><td><b>'+name+': </b>'+eintrag+'</td></tr></table>';
        this.htmltag=this.htmltag+'<img id=lexikon'+name+'eckeOL  src="ecke_kl_ol_hell.gif" style="position:absolute; visibility:hidden"></img>';
        this.htmltag=this.htmltag+'<img id=lexikon'+name+'eckeOR  src="ecke_kl_or_hell.gif" style="position:absolute; visibility:hidden"></img>';
        this.htmltag=this.htmltag+'<img id=lexikon'+name+'eckeUR  src="ecke_kl_ur_hell.gif" style="position:absolute; visibility:hidden"></img>';
        this.htmltag=this.htmltag+'<img id=lexikon'+name+'eckeUL   src="ecke_kl_ul_hell.gif" style="position:absolute; visibility:hidden"></img>';
        document.write(this.htmltag);
      }
      var lexikon=new LexikonEintrag('Lexikon', 'Darin kann man praktisch alles nachschlagen', 50);

      mfG

      Michael

  2. Dieses Script soll einige Elemente sichtbar machen und richtig positionieren. Alle Elemente werden angezeigt und richtig positioniert, nur das Element dessen Zeile ich mit !!! markiert habe nicht. Im IE funktionierts, aber im NS 6 nicht.

    !!!  document.getElementById('lexikon'+which).style.top=mouseY;  !!!
      !!!  document.getElementById('lexikon'+which).style.left=mouseX; !!!

    Ich seh keinen Unterschied zu den anderen.

    Im IE6 kannst du per Aufgaben->Extras->JavaScriptKonsole die die Fehlermeldungen anzeigen lassen. Kommt da was?

    Wenn nicht, zeig mal wie 'lexikonxx' definiert ist.

    By
    Reinhard

    1. Im IE6

      Ich mein natürlich den NS6