Ole: <title> in top.document mit getElementByTagName ändern

Hallo

ich bastel grade an einer seite und soll dynamisch den titel einer seite ändern. im prinzip ja kein problem, ich könnte ja einfach die variable serverseitig einsetzen lassen und das wars.

doch leider ist es nicht ganz so einfach...da wär ich ja (wie man sehen kann) selber drauf gekommen.

das problem liegt daran, das es sich um eine ASP anwendung handelt. jeder kunde hat seine eigene subdomain (http://kundenname.domain.de). diese enthält ein frameset in das die anwendung geladen wird, damit die subdomain des kunden (http://kundenname.domain.de) immer unverändert in der adresszeile steht und nicht der richtige pfad zur anwendung mit samt den ganzen variblen zur schau gestellt wird (http://www.domain.de/index.cfm?variable=blabla).

nun habe ich allerdings keinen direkten einfluss auf das oberste frameset, kann also die seite nicht ändern (fragt nicht warum, es ist einfach so *seuftz*).

ich hab mir dann also gedacht...bei selfhtml haste dochmal was gelesen...von wegen TAGS in diversen seiten via getElementByTagName ansprechen.
ich also gesucht...und gefunden...und rausgekommen ist dabei folgendes:

<script language="JavaScript" type="text/javascript">
 top.document.getElementByTagName("title")[0].firstChild.data="<cfoutput>#session.titel#</cfoutput>";
</script>
(eine zeile zwischen <script> und </script>)

das hier "<cfoutput>#session.titel#</cfoutput>" ist coldfusion und wird serverseitig eben durch den entsprechnenden seitentitel ersetzt. im endeffekt sieht der browser dann z.B. "Mein Shop".

doch das ganze funktioniert nicht :(...der browser (IE6) meldet mir "Zugriff wurde verweigert." Warum? Und was mach ich falsch?

Kann mir jemand bei der Lösung dieses Problems behilflich sein?

alles liebe
ole
(8-)>

--
Die Summe aller menschlichen Intelligenz ist eine Konstante.
Das Problem ist das Bevölkerungswachtum...
sh:( fo:) ch:| rl:° br:& n4:° ie:% mo:} va:| de:] zu:| fl:( ss:) ls:\ js:|
If you can't beat 'em...eat 'em !
  1. korrektur:

    <script language="JavaScript" type="text/javascript">
     top.document.getElementsByTagName("title")[0].firstChild.data="<cfoutput>#session.titel#</cfoutput>";
    </script>
    (eine zeile zwischen <script> und </script>)

    so long
    ole
    (8-)>

    --
    Die Summe aller menschlichen Intelligenz ist eine Konstante.
    Das Problem ist das Bevölkerungswachtum...
    sh:( fo:) ch:| rl:° br:& n4:° ie:% mo:} va:| de:] zu:| fl:( ss:) ls: js:|
    If you can't beat 'em...eat 'em !
  2. Hallo Ole,

    (http://kundenname.domain.de)
    (http://www.domain.de/index.cfm?variable=blabla).

    doch das ganze funktioniert nicht :(...der browser (IE6) meldet mir "Zugriff wurde verweigert." Warum? Und was mach ich falsch?

    Das liegt an der Cross-Server-Sicherheitsrestriktion - Du darfst per JavaScript nicht von einer Seite auf www.domain.de auf eine Seite auf kundenname.domain.de zugreifen, auch wenn beide auf der selben Domain hängen.

    Wenn Du tatsächlich keine Möglichkeit hast, das Frameset zu bearbeiten (wie Du schreibst), gibt es für Dein Problem vermutlich keine funktionierende Lösung.

    Grüße,

    Utz

    1. hi utz

      Wenn Du tatsächlich keine Möglichkeit hast, das Frameset zu bearbeiten (wie Du schreibst), gibt es für Dein Problem vermutlich keine funktionierende Lösung.

      leider hab ich die nicht :(...dann muß ich cheffe wohl sagen "geht nicht!".

      dank dir

      alles liebe
      ole
      (8-)>

      --
      Die Summe aller menschlichen Intelligenz ist eine Konstante.
      Das Problem ist das Bevölkerungswachtum...
      sh:( fo:) ch:| rl:° br:& n4:° ie:% mo:} va:| de:] zu:| fl:( ss:) ls: js:|
      If you can't beat 'em...eat 'em !