aiken: Script funktioniert im Frameset nicht

Hallo zusammen,

ein ähnliches Problem plagt mich. Auf meiner Seite verwende ich ein Codeschnippsel um bedingte Select Abfragen zu per JavaScript zu generieren. Das funktioniert soweit auch wunderbar, aber eben nur wenn es nicht in einen Frameset eingebettet ist. Sobald folgender Code in einem Frame geladen wird funktioniert er nicht mehr.

Code:
function initCS() {
  var form = document.forms[0];
  initListGroup('outeffects', document.forms[0].outvalue1, document.forms[0].outvalue2, document.forms[0].outvalue3);
  initListGroup('outeffects', document.forms[0].overvalue1, document.forms[0].overvalue2, document.forms[0].overvalue3);
}

ich denke es liegt an dieser Funktion, den hier wird das ganze initialisiert. Ich weißt so ungefähr, dass ich den frame ansprechen sollte, aber ist das denn nciht mit document.forms[0]... getan? Wenn ich nichts davor stehen hab, ist dass doch gleichbedeutend mit this.document.forms[0]... und das Frame dürfte angesprochen sein, oder? Kann mir da jemand weiterhelfen?

Danke schon im Voraus.
ciao Aiken

  1. Ahoi aiken,

    Kann mir da jemand weiterhelfen?

    a) benutze keine Frames
    b) öffne die JS Konsole und schau dort nach einer Fehlermeldung

    MfG

    --
    Alle Angaben wie immer ohne Gewähr
    1. a) benutze keine Frames

      mach ich auch ungern, aber es wurde mir so vorgegeben.

      b) öffne die JS Konsole und schau dort nach einer Fehlermeldung

      Der IE gibt zurück, dass es sich um ein unerwartetes Objekt handelt, das Null ist oder nicht exisitiert und der Firefox gibt "Error: addListGroup is not a function" zurück. Doch an letzterem kann es, denke ich mal, nicht liegen, weil es ja in einem seperaten Fenster auch funktioniert. Oder irre ich mich da?

      1. hi,

        der Firefox gibt "Error: addListGroup is not a function" zurück. Doch an letzterem kann es, denke ich mal, nicht liegen, weil es ja in einem seperaten Fenster auch funktioniert. Oder irre ich mich da?

        glaubst du, es besser zu wissen, als der, der den javascript-code interpretiert - der firefox?

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
        1. Also die Funktion ist vorhanden und wird von mir includiert.
          function addListGroup(n,tm) {
            if (cs_goodContent) {
              cs_curTop=new cs_topmenuOBJ(tm); cs_curSub=null;

          var c=cs_findContent(n);
              if (c==null) {
                cs_content[cs_content.length]=new cs_contentOBJ(n,cs_curTop);
              }
              else {
                delete(c.menu); c.menu=cs_curTop;
              }
            }
          }

          Jedoch könnte das ein Hinweis darauf sein, dass er evtl. die jeweilige Datei nicht findet.
          Mit diesem Codefragment lade ich die JS.

          <SCRIPT language=JavaScript src="<?php echo "http://".$_SERVER['SERVER_NAME']. installpath; ?>include/js/chainedselects.js" type=text/javascript></SCRIPT>
          <SCRIPT language=JavaScript src="<?php echo "http://".$_SERVER['SERVER_NAME']. installpath; ?>include/js/cscontrol.js" type=text/javascript></SCRIPT>
          <SCRIPT language=JavaScript src="<?php echo "http://".$_SERVER['SERVER_NAME']. installpath; ?>include/js/chain_cfg.js" type=text/javascript></SCRIPT>
          <SCRIPT language=JavaScript type="text/javascript">

          Die Funktion addListGroup ist in der Datei chainedselects.js zu finden und wird erst in chain_cfg.js aufgerufen.
          Vielleicht weiß jemand mehr?

          1. hi,

            Jedoch könnte das ein Hinweis darauf sein, dass er evtl. die jeweilige Datei nicht findet. [...]
            Die Funktion addListGroup ist in der Datei chainedselects.js zu finden und wird erst in chain_cfg.js aufgerufen.

            ich bin ehrlich gesagt überfragt, ob ein browser einen aufruf aus einem script, welches "hinter" einem, in dem die funktion definiert ist, erst dann ausführen darf, wenn auch die erste datei geladen wurde.

            checke doch mal die ladereihenfolge: baue in jede script-datei ganz zu anfang einen alter mit dem scriptnamen ein, und beobachte, in welcher reihenfolge die alerts erscheinen.

            gruß,
            wahsaga

            --
            /voodoo.css:
            #GeorgeWBush { position:absolute; bottom:-6ft; }
            1. hi,
              hab ich gemacht und er gibt die alerts in der richtige Reihenfolge aus.
              Das Problem ist ja, dass das Script in einem Fenster funktioniert, aber sobald es in das Frameset einbegebettet wurde nicht mehr. So weiß ich auch nicht, wo ich mit der Fehlersuche beginnen könnte, da es ja offensichtlich geht, aber eben nur mit der für mich nicht akzeptablen Bedingung.
              Es gibt vom Browser so Beschränkungen, dass ich nicht in ein fremdes Frame eingreifen kann. Aber tritt auch nur ein, wenn ich den Code einer anderen Domain verändern will um Hackerangriffe zu vermeiden.
              Weder die Inhalte der anderen Frames liegen auf einen fremden Server, noch versuche ich ein anderes Frame zu manipulieren.
              Ich weiß auch nicht wo ich mich hinwenden könnte oder wo ich jemanden finde, der sich genau mit der Thematik auskennt?

              Grüße
              Aiken