Robert: Frames

Hi

Kann mir jemand sagen wie man einen Doppelklick in Frames abfängt. An folgendem Code bin am üben...

<html>

<head>
<title>Test page</title>

<script language="JavaScript">
   function expando(){
   alert("Test")
}
   document.ondblclick="expando();"
</script>

<frameset cols="50%,50%" >
   <frame src="http://dict.leo.org/" name="Dict" frameborder=0 >
   <frame src="http://www.google.ch" name="Search" frameborder=0>
</frameset>

</head>

<body topmargin="1" leftmargin="1" marginwidth="1" marginheight="1" >

</body>
</html>

Vielen Dank für jeden Tip !

  1. Hallihallo!

    Kann mir jemand sagen wie man einen Doppelklick in Frames abfängt. An folgendem Code bin am üben...

    <html>

    <head>
    <title>Test page</title>

    <script language="JavaScript">
       function expando(){
       alert("Test")
    }
       document.ondblclick="expando();"
    </script>

    Spätestens hier sollte der head geschlossen werden!

    <frameset cols="50%,50%" >
       <frame src="http://dict.leo.org/" name="Dict" frameborder=0 >
       <frame src="http://www.google.ch" name="Search" frameborder=0>
    </frameset>

    </head>

    <body topmargin="1" leftmargin="1" marginwidth="1" marginheight="1" >

    </body>

    In einer Frameset- Definition hat ein body nichts zu suchen!
    In den meisten Fällen wird so nämlich das Frameset einfach ignoriert.
    Mehr dazu unter http://selfhtml.teamone.de/html/frames/definieren.htm#grundgeruest
    Ein zusätzliches Problem ist in Deinem Quelltext das Frameset im Kopfbereich definiert wird.

    </html>

    Aber zu Deiner Frage:
    den eventhandler onDblClick musst Du in den Dokumenten einbauen, die im Frameset angezeigt werden.
    Am einfachsten ist das, indem man die betreffenden body-Tags entsprechend erweitert, also
    <body onDblClick=blabla()">..........</body>

    Oder man macht das, wie Du es versucht hast, in einem eingebauten Javascript:
    <script type="text/javascript">
       document.onDblClick = bla()

    function bla() {....}
    </script>

    Die Einzelheiten zum gesamten Thema findest Du unter:
    http://selfhtml.teamone.de/html/frames/definieren.htm
    [link:http://selfhtml.teamone.de/javascript/sprache/eventhandler.htm#ondblclick

    Ich hoffe, ich konnte Dir helfen....

    Viele liebe Grüße,
    Der Dicki

    1. Vielen Dank Euch Beiden!

  2. hi,
    du hast ja die lösung schon geliefert. das javascriptchen würde ich aber in den header der einzelnen frames setzen. ich glaub, sonst geht's nicht.
    bei netscape musst du noch eine kleine abfrage machen. dann sieht das ungefähr so aus:

    <script language="JavaScript">
      function expando()
        {alert("Test");}
      if(document.layers)
        {document.captureEvents(Event.ONDBLCLICK);}
      document.ondblclick=expando;
    </script>

    gruss
    bjoern