Announcement

Collapse
No announcement yet.

Infobox button funktioniert nicht

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Infobox button funktioniert nicht

    Hallo,
    brauch mal noch mal eure Hilfe.
    Hab einen versteckten <div> , der geht bei mouseover auf.funktioniert auch alles.
    Nun hab ich nen String als Text,der aus html tags besteht.
    will den div jetzt mit nem button schließen funktioniert aber nicht.
    vielleicht wisst ihr weiter.
    Code:
    var buyBox = new Array();
    
    buyBox[0] = 
    '<table>'+                                                                                
    '                <tr>'+
    '                    <td>'+
    '                        <p>Vorname: </p>'+
    '                    </td>'+
    '                    <td>'+
    '                        <input id="vorname" type="text">'+
    '                    </td>'+
    '                </tr>'+
    '                <tr>'+
    '                    <td>'+
    '                        <p>Name: </p>'+
    '                    </td>'+
    '                    <td>'+
    '                        <input id="Name" type="text">'+
    '                    </td>'+
    '                </tr>'+
    '                <tr>'+
    '                    <td>'+
    '                        <p>Adresse: </p>'+
    '                    </td>'+
    '                    <td>'+
    '                        <input id="adresse" type="text">'+
    '                    </td>'+
    '                    </tr>'+
    '                <tr>'+
    '                    <td>'+
    '                        <p>Ort: </p>'+
    '                    </td>'+
    '                    <td>'+
    '                        <input id="ort" type="text">'+
    '                    </td>'+
    '                </tr>'+
    '                <tr>'+
    '                    <td>'+
    '                        <p>E-mail: </p>'+
    '                    </td>'+
    '                    <td>'+
    '                        <input id="mail" type="text">'+
    '                    </td>'+
    '                </tr>'+
    '                <tr>'+
    '                    <td>'+
    '                        <input id="check" type="checkbox" value="Kaufen" >'+
    '                    </td>'+
    '                    <td>'+
    '                        <p><a id="AGB" href="">ABG</a> gelesen.</p>'+
    '                    </td>'+
    '                </tr>'+
    '                <tr>'+
    '                    <td>'+
    '                        <input id="senden" type="button" value="Kaufen" onclick="">'+
    '                    </td>'+
    '                    <td>'+
    '                        <input id="schließen" type="button" value="Schließen" onmouseover="buyBoxAusblenden()">'+
    '                    </td>'+
    '                </tr>'+
    '</table>'
    denke bei rot ist irgendwo der fehler!
    danke

  • #2
    Warum sollte etwas ausgeführt werden, was in irgendeinem String steht?

    Ich verstehe davon abgesehen die komplette Frage nicht. Im Code ist kein DIV, wo ist die Infobox?
    Christian

    Comment


    • #3
      Code:
      <script type="text/javascript" language="JavaScript">
      
      
      
      //  ::::::::  Inhalte  Anfang ::::::::
      
      var buyBox = new Array();
      
      buyBox[0] = 
      '<table>'+                                                                                
      '                <tr>'+
      '                    <td>'+
      '                        <p>Vorname: </p>'+
      '                    </td>'+
      '                    <td>'+
      '                        <input id="vorname" type="text">'+
      '                    </td>'+
      '                </tr>'+
      '                <tr>'+
      '                    <td>'+
      '                        <p>Name: </p>'+
      '                    </td>'+
      '                    <td>'+
      '                        <input id="Name" type="text">'+
      '                    </td>'+
      '                </tr>'+
      '                <tr>'+
      '                    <td>'+
      '                        <p>Adresse: </p>'+
      '                    </td>'+
      '                    <td>'+
      '                        <input id="adresse" type="text">'+
      '                    </td>'+
      '                    </tr>'+
      '                <tr>'+
      '                    <td>'+
      '                        <p>Ort: </p>'+
      '                    </td>'+
      '                    <td>'+
      '                        <input id="ort" type="text">'+
      '                    </td>'+
      '                </tr>'+
      '                <tr>'+
      '                    <td>'+
      '                        <p>E-mail: </p>'+
      '                    </td>'+
      '                    <td>'+
      '                        <input id="mail" type="text">'+
      '                    </td>'+
      '                </tr>'+
      '                <tr>'+
      '                    <td>'+
      '                        <input id="check" type="checkbox" value="Kaufen" >'+
      '                    </td>'+
      '                    <td>'+
      '                        <p><a id="AGB" href="">ABG</a> gelesen.</p>'+
      '                    </td>'+
      '                </tr>'+
      '                <tr>'+
      '                    <td>'+
      '                        <input id="senden" type="button" value="Kaufen" onclick="">'+
      '                    </td>'+
      '                    <td>'+
      '                        <input id="schließen" type="button" value="Schließen" onmouseover="buyBoxAusblenden()">'+
      '                    </td>'+
      '                </tr>'+
      '</table>'
      
      //  :::::::: Inhalte Ende ::::::::
      
      
      
      
      if (document.layers) {navigator.family = "nn4"}
      if (document.all) {navigator.family = "ie4"}
      if (window.navigator.userAgent.toLowerCase().match("gecko")) {navigator.family = "gecko"}
      
      overdiv="0";
      
      
      function buyBoxAnzeigen(a)
      {
      if(!buyBox[a]){buyBox[a]="<font color=red>Dieses PopUp (#"+a+") ist nicht korrekt definiert<br>Die Beschreibung fehlt. Ein Array-Element mit dieser Index-Nummer wurde nicht definiert!</font>";
      }
      
      Inhalt = buyBox[a];
      
      
      if(navigator.family =="nn4") {
              document.buyBox2.document.write(Inhalt);
              document.buyBox2.document.close();
              document.buyBox2.left=x+15;
              document.buyBox2.top=y-5;
              }
      else if(navigator.family =="ie4"){
              buyBox2.innerHTML=Inhalt;
              buyBox2.style.pixelLeft=x+15;
              buyBox2.style.pixelTop=y-5;
              }
      else if(navigator.family =="gecko"){
              document.getElementById("buyBox2").innerHTML=Inhalt;
              document.getElementById("buyBox2").style.left=x+15;
              document.getElementById("buyBox2").style.top=y-5;
              }
      }
      
      
      function buyBoxAusblenden(){
      if (overdiv == "0") {
              if(navigator.family =="nn4") {eval(document.buyBox2.top="-1000");}
              else if(navigator.family =="ie4"){buyBox2.innerHTML="";buyBox2.style.pixelTop=y-1000;}
              else if(navigator.family =="gecko") {document.getElementById("buyBox2").style.top="-1000";}
              }
      }
      
      
      
      // überwacht Maus-Position / plaziert die InfoBox2 dementsprechend
      // außer beim alten Netscape
      
      var isNav = (navigator.appName.indexOf("Netscape") !=-1);
      
      function Position(e){
      
      // entweder feste x- / y-Position für die InfoBox2
      // x = 300; // Infobox x-Position bei 300 Px (horizontal)
      // y = 20;   // Infobox y-Position bei 20 Px (vertikal)
      
      // oder Plazierung neben Mauszeiger
      x = (isNav) ? e.pageX : event.clientX + document.body.scrollLeft;
      y = (isNav) ? e.pageY : event.clientY + document.body.scrollTop;
      
      }
      
      if (isNav){document.captureEvents(Event.mouseMove);}
      document.onmousemove = Position;
      
      //  End -->
      </script>
      
      
      
      
      <script type="text/javascript" language="JavaScript">
      
      
      
      //  ::::::::  Inhalte  Anfang ::::::::
      
      var InfoBox = new Array();
      
      InfoBox[0] = 'nicht benutzt';
      
      InfoBox[1] = '25 Euro';
      
      InfoBox[2] = '50 Euro';
      
      InfoBox[3] = '150 Euro';
      
      InfoBox[4] = '300 Euro';
      
      
      
      
      
      
      
      //  :::::::: Inhalte Ende ::::::::
      
      
      
      
      if (document.layers) {navigator.family = "nn4"}
      if (document.all) {navigator.family = "ie4"}
      if (window.navigator.userAgent.toLowerCase().match("gecko")) {navigator.family = "gecko"}
      
      overdiv="0";
      
      
      function BoxAnzeigen(a)
      {
      if(!InfoBox[a]){InfoBox[a]="<font color=red>Dieses PopUp (#"+a+") ist nicht korrekt definiert<br>Die Beschreibung fehlt. Ein Array-Element mit dieser Index-Nummer wurde nicht definiert!</font>";
      }
      
      Inhalt = InfoBox[a];
      
      
      if(navigator.family =="nn4") {
              document.InfoBox2.document.write(Inhalt);
              document.InfoBox2.document.close();
              document.InfoBox2.left=x+15;
              document.InfoBox2.top=y-5;
              }
      else if(navigator.family =="ie4"){
              InfoBox2.innerHTML=Inhalt;
              InfoBox2.style.pixelLeft=x+15;
              InfoBox2.style.pixelTop=y-5;
              }
      else if(navigator.family =="gecko"){
              document.getElementById("InfoBox2").innerHTML=Inhalt;
              document.getElementById("InfoBox2").style.left=x+15;
              document.getElementById("InfoBox2").style.top=y-5;
              }
      }
      
      
      function BoxAusblenden(){
      if (overdiv == "0") {
              if(navigator.family =="nn4") {eval(document.InfoBox2.top="-1000");}
              else if(navigator.family =="ie4"){InfoBox2.innerHTML="";InfoBox2.style.pixelTop=y-1000;}
              else if(navigator.family =="gecko") {document.getElementById("InfoBox2").style.top="-1000";}
              }
      }
      
      
      
      // überwacht Maus-Position / plaziert die InfoBox2 dementsprechend
      // außer beim alten Netscape
      
      var isNav = (navigator.appName.indexOf("Netscape") !=-1);
      
      function Position(e){
      
      // entweder feste x- / y-Position für die InfoBox2
      // x = 300; // Infobox x-Position bei 300 Px (horizontal)
      // y = 20;   // Infobox y-Position bei 20 Px (vertikal)
      
      // oder Plazierung neben Mauszeiger
      x = (isNav) ? e.pageX : event.clientX + document.body.scrollLeft;
      y = (isNav) ? e.pageY : event.clientY + document.body.scrollTop;
      
      }
      
      if (isNav){document.captureEvents(Event.mouseMove);}
      document.onmousemove = Position;
      
      //  End -->
      </script>
      
      
      
      
      
      <title>Parzellenverkauf</title>
      </head>
      <body>
      <div id="InfoBox2" style="position:absolute;visibility:show; left:25px; top:-100px; z-index:+1" onmouseover="overdiv='1';" onmouseout="overdiv='0'; setTimeout('BoxAusblenden()',2000)">Text</div>
      <div id="buyBox2" style="position:absolute;visibility:show; left:25px; top:-100px; z-index:+1" onmouseover="overdiv='1';" onmouseout="overdiv='0'; setTimeout('BoxAusblenden()',2000)">Text</div>
      das ist der code ohne die links

      Comment


      • #4
        Sorry, aber mir ist das zu konfus. Du willst tatsächlich Netscape und IE4 unterstützen? Das sind Browser die Generationen alt sind. Deine Javascript-Quellen scheinen arg veraltet zu sein. Das beginnt schon bei der Deklaration von Javascript. Bis auf zwei kleine divs im Head wird der ganze Seitenquelltext "per Javascript" erzeugt??

        Irgendwie erscheint das umständlich und fehleranfällig. Werde auch den Eindruck nicht los, dass hier die Funktionalität eigentlich auf den Server gehört

        Warum das alles nicht per CSS?


        Weiterhelfen sollte
        http://jquery.com/

        http://www.css4you.de/


        http://de.selfhtml.org/css/index.htm
        Christian

        Comment


        • #5
          Ist nur zum persönlichen Test bin Anfänger und hab das Skript runtergeladen.
          mir gehts nur um den roten Teil,die javascript funktion.
          Wenn ich dort alert() einsetze funktionierts.Nur mit der ausblenden() gehts nicht.
          wollte nur wissen warum

          Comment


          • #6
            habs hingekriegt anstatt der funktion muss hin
            buyBox2.innerHTML=null;buyBox2.style.pixelTop=y-1000;

            Comment

            Working...
            X