JavaScript Zellen-ansteuerung

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • JavaScript Zellen-ansteuerung

    hi

    Ich habe ein Problem mit JavaScript:

    Code:
    document.getElementsByTagName("table")
    steuert mir die erste tabelle auf meiner seite an. bei "body" waers das übergeordnete fenster. Wunderschoen.
    Wie kann ich aber jetzt eine einzelne zelle ansteuern.
    getElemenById funktioniert nich, und "td" kann ich mir nicht vorstellen. Weiss da wer bescheid?
    Zuletzt geändert von moke102; 02.10.2008, 22:20.
    BlueSkys - moke102
    www.moke102.com

  • #2
    Entweder durch die Nodes hängen und das richtige finden http://de.selfhtml.org/javascript/objekte/node.htm

    oder wie die Methode schon verrät .getElementsByTagName() ... hier bekommst du ein array wenn es mehrere gibt, dann kannst du mit einer Schleife die einzelnen Tag untersuchen und das Ziel finden, also td musst du dafür schon nehmen
    Zuletzt geändert von asp2php; 02.10.2008, 23:21.

    Kommentar


    • #3
      ok. aber damit komm ich bei der verschatelung nicht weiter.
      Ich muss ja x "td"s ueberspringen.
      oder wuerde:
      Code:
      document.getElementsByTagName("table").getElementsByTagName("td").getElementsById("tralala")...
      auch gehen? dann koennte ich ja verschiedene zellen gleichzeitig ansteuern? das waer ein cooooler effekt
      BlueSkys - moke102
      www.moke102.com

      Kommentar


      • #4
        Ein Array sprichst du mit [] an.

        http://de.selfhtml.org/javascript/objekte/array.htm

        Kommentar


        • #5
          ne das isses nicht. muss wohl besser beschreiben.
          hab eine tabelle mit 3 rows 5 collums. und moechte in B3 (ein bisschen schiffeversenken so spaet in der nacht ) das hintergrund porperty ansprechen.
          aber td funzt leider nur in A1
          Zuletzt geändert von moke102; 02.10.2008, 23:47.
          BlueSkys - moke102
          www.moke102.com

          Kommentar


          • #6
            Und warum vergibst du nicht einfach IDs?

            <td id="A1"></td>
            <td id="A2"></td>
            usw.

            Kommentar


            • #7
              hab ich versucht. aber er nimmt sie nicht an. darum gehts

              Code:
              if(document.getElementsByTagName) {
              var backXPosPic=top.window.name.indexOf("backXPos")+1;
              backXPos=(backXPosPic)?parseInt(top.name.substring(backXPosPic+7),10):0;   
              backYPos=0;
              scrollBackObj=document.getElementsByTagName("td")[0].style;    
              scrollBackObj.backgroundPosition=backXPos+"px "+backYPos+"px";    
              scrollBack();
              }
              dreht ein bild durch. aber eben in der falschen zelle.
              BlueSkys - moke102
              www.moke102.com

              Kommentar


              • #8
                Ihr habt natuerlich recht. hat funktioniert.
                Vielen Dank.
                Zuletzt geändert von moke102; 03.10.2008, 00:52.
                BlueSkys - moke102
                www.moke102.com

                Kommentar


                • #9
                  So wenn also jemand ein 360 grad bild braucht:

                  Code:
                  <html>
                  <head>
                  <script type="text/javascript" language="JavaScript">
                  cm=false;
                  function turnPic() {
                  backWidth=2800; backXStep=3; backXCall=20; backXMove=0;   
                  if(document.getElementsByTagName) {
                  var backXPosPic=top.window.name.indexOf("backXPos")+1;    
                  backXPos=(backXPosPic)?parseInt(top.name.substring(backXPosPic+7),10):0;    
                  backYPos=0;
                  scrollBackObj=document.getElementsByTagName("td")["turn"].style;
                  scrollBackObj.backgroundPosition=backXPos+"px "+backYPos+"px";    scrollBack(); 
                  }
                  } 
                  function scrollBack() {
                  if(backXMove) {
                  backXPos=(Math.abs(backXPos)>backWidth)?0:backXMove*backXStep+backXPos;    
                  scrollBackObj.backgroundPosition=backXPos+"px "+backYPos+"px";
                  top.window.name="backXPos"+backXPos;
                  }
                  window.setTimeout("scrollBack()",backXCall);
                  }
                  </script>
                  </head>
                  <body>
                  <td>
                  <table width="80%" border="0" align="center" cellpadding="0" cellspacing="8">
                  <tr>
                  <td height="100" bgcolor="#FFFFCC" >&nbsp;</td>
                  <td width="60%" height="100" bgcolor="#FFFFCC">&nbsp;</td>
                  <td height="100" bgcolor="#FFFFCC">&nbsp;</td>
                  </tr>
                  <tr>
                  <td height="100" bgcolor="#FFFFCC" onmouseover="backXMove=-1;" onmouseout="backXMove=0;"><div align="center">&lt;&lt;</div></td>
                  <td width="60%" height="100" background="yourPic.jpg" bgcolor="#FFFFCC" id="turn"> 
                  <script type="text/javascript" language="JavaScript">
                  if(cm){turn()}; turnPic(); 	</script>
                  </td>
                  <td height="100" bgcolor="#FFFFCC" onmouseover="backXMove=1;" onmouseout="backXMove=0;"><div align="center">&gt;&gt;</div></td>
                  </tr>
                  <tr>
                  <td height="100" bgcolor="#FFFFCC" >&nbsp;</td>
                  <td width="60%" height="100" bgcolor="#FFFFCC">&nbsp;</td>
                  <td height="100" bgcolor="#FFFFCC" id="welle">&nbsp;</td>     </tr>
                  </table>
                  </body>
                  </html>
                  Noch backWidth und die Zellen Groessen durch Eure ersetzen fertig.
                  Viel spass
                  BlueSkys - moke102
                  www.moke102.com

                  Kommentar


                  • #10
                    was ist denn ein 360Grad Bild?

                    Kommentar

                    Lädt...
                    X