Avatar billede finmand Nybegynder
16. maj 2004 - 13:22 Der er 8 kommentarer og
1 løsning

JavaScript kontra Iframe

Hej
Jeg har en javaScript menu, fundet på nettet, som skal samarbejde med en iframe. Dog det lader ikke til at de 2 ting kan kommunikere ordentligt Koden:

<script language="javascript" type="text/javascript"><!-- function toggleClamShellMenu(objectID) {
    var object = document.getElementById(objectID);
    if (object.style.display =='block')  object.style.display='none';
    else object.style.display='block';
    return;
}
// -->
</script>

Så følger der en CSS beskrivelse(den mente jeg ikke var nødvendig at ha med her)
Og så selve menuen.

<a class="menuHead" href="java script:toggleClamShellMenu('menu1')">&gt; Introduktion</a><br />
<span id="menu1">
<a class="menuOption" href="bimse.html" target="iframe">Martin??</a><br />
<a class="menuOption" href="file:///L:/Mediacademy/option4.html" target="content">Se det i praksis</a><br /><br />
</span>

Så...er problemet iframen - eller er koden forkert.
I så fald at iframe ikke virker, vilken erstatning kan jeg så bruge??

På forhånd tak
Avatar billede roenving Novice
16. maj 2004 - 15:00 #1
Prøv først med:

function toggleClamShellMenu(objectID) {
  var st = document.getElementById(objectID).style;
  if (st.display !='none')  st.display='none';
  else st.display='block';
  return;
}

-- og hvor er der en iframe ?-)
Avatar billede olebole Juniormester
16. maj 2004 - 16:37 #2
<ole>

For at et link skal kunne åbne i en iframe, skal linket have target="IFRAME_NAVN".

Så vidt jeg kan se, har du target="iframe" og target="content" på dine to links. Hvis din iframe har name="content", skal du bruge det i begge targets.

Hvis din iframe har name="iframe", ville jeg nok vælge at give den et andet navn. Prøv altid at vælge navne, der med garanti ikke kan misforstås af de sprog, der 'tales' af browseren  :)

/mvh
</bole>
Avatar billede finmand Nybegynder
16. maj 2004 - 18:25 #3
Tak for svar - desværre virker det stadigvæk ikke. Har prøvet at sætte den nye kode ind, og omdømt iframen. Men måske kan dette hjælpe lidt, det er en fald-ned menu - men ved mouse over, bliver de 3 åbningsknapper stående, denne besked kommer i statusbjælken: java script:toggleClamShellMenu('menu1'). Og et nyt vindue bliver åbnet med "Siden ikke fundet".
Her er den fulde kode - jeg har lige fjernet 2 af de 3 menu så i ikke skal oversvømmes af kode.

Håber der en der kender svaret

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>MediaCademy</title>
<script language="javascript" type="text/javascript"> function toggleClamShellMenu(objectID) {
  var st = document.getElementById(objectID).style;
  if (st.display !='none')  st.display='none';
  else st.display='block';
  return;
}

// -->
</script>
<style type="text/css">
<!--
body {
    font-family: "Trebuchet MS", Arial, Helvetica, Geneva, sans-serif;
    background-color: #336699
    }

.menuHead {
    color: #c00;
    font-size: 14px;
    font-family: "Trebuchet MS", Arial, Helvetica, Geneva, sans-serif;
    font-weight: bold;
    text-decoration: none;
    border-top: 1px solid #300
    }

.menuOption {
    color: #f00;
    font-size: 12px;
    font-family: "Trebuchet MS", Arial, Helvetica, Geneva, sans-serif;
    margin-left: 5px
    }

#menu1 {
    display: none
    }

#menu2 {
    display: none
    }

#menu3 {
    display: none
    }

--></style>
<base target="iframepic">
</head>

<body >

<table width="100%" border="0" cellspacing="2" cellpadding="0" height="100%">
            <tr height="10%">
                <td width="10%" height="10%"></td>
                <td width="80%" height="10%"></td>
                <td width="10%" height="10%"></td>
            </tr>
    <tr height="80%">
        <td width="10%" height="80%"></td>
    <td align="left" valign="top" width="80%" height="80%">
    <table  width="979" height="768" border="0" cellspacing="2" cellpadding="20" background="pic/bag.gif" align="left" >
    <tr height="150">
    <td align="left" valign="middle" width="128" height="150"></td>
    <td width="128" height="150"></td>
    <td width="57" height="150"></td>
    <td width="352" height="150"></td>
    <td width="100" height="150"></td>
                        </tr>
            <tr height="300">
    <td width="128" height="50"> </td>
    <td align="left" valign="left" bgcolor="white" width="130" height="300"><p><a href="introduktion.html" target="iframepic"><b>MediaCademy</b></a><br /><br />
       
<a class="menuHead" href="java script:toggleClamShellMenu('menu1')">&gt; Introduktion</a><br />
<span id="menu1">
<a class="menuOption" href="bimse.html" target="iframepic">Martin??</a><br />
<a class="menuOption" href="ting.html" target="iframepic">Outlook genopfundet</a><br />
<a class="menuOption" href="file:///L:/Mediacademy/option3.html" target="iframepic">Programvinduet</a><br />
<a class="menuOption" href="file:///L:/Mediacademy/option4.html" target="iframepic">Se det i praksis</a><br /><br />
        </span>
       
   
<font size="1"><a target="_blank" href="http://www.mediacademy.dk">MediaCademy 2004</a></font></td>
                <td width="57" height="300"></td>
                <td bgcolor="white" width="352" height="300">
                <IFRAME NAME="iframepic" frameborder="0" SRC="introduktion.html" ALIGN="top" HEIGHT="300" WIDTH="400" HSPACE="10">
        If you can see this, your browser does not support iframes!
            </IFRAME></td>
<td align="right" valign="middle" width="100" height="300"></td>
                        </tr>
                        <tr height="100">
                            <td align="left" valign="middle" width="128" height="100"></td>
                    <td width="128" height="100"></td>
                    <td width="57" height="100"></td>
                    <td width="352" height="100"></td>
                    <td width="100" height="100"></td>
                        </tr>
                    </table>
                </td>
                <td width="10%" height="80%"></td>
            </tr>
            <tr height="10%">
                <td width="10%" height="10%"></td>
                <td width="80%" height="10%"></td>
                <td width="10%" height="10%"></td>
            </tr>
        </table>
           
    </body>

</html>
Avatar billede roenving Novice
16. maj 2004 - 18:38 #4
<script language="javascript" type="text/javascript">
function toggleClamShellMenu(objectID) {
  var st = document.getElementById(objectID).style;
  if (st.display !='block')  st.display='block';
  else st.display='none';
  return;
}
</script>
Avatar billede roenving Novice
16. maj 2004 - 18:39 #5
-- og:

<a class="menuHead" href="#" onclick="toggleClamShellMenu('menu1');return false;">&gt; Introduktion</a><br />
Avatar billede roenving Novice
16. maj 2004 - 18:39 #6
-- hvis ikke return false; er med vil hele siden blive reloadet, så det vil også returnere den til strárttilstanden !-)
Avatar billede finmand Nybegynder
16. maj 2004 - 18:51 #7
Roenving.
Fremover skal du af mig kendes som "Gud". :) Damm your good.
Mange tak det virker som det skal nu...håber det bliver ved med det - ellers vender jeg frygteligt tilbage.
Nu skal jeg bare ha fundet ud af hvordan du kan få dine points
Avatar billede roenving Novice
16. maj 2004 - 19:24 #8
Jamen, så skal du jo have et svar fra mig !-)

Velbekomme '-)
Avatar billede roenving Novice
17. maj 2004 - 12:16 #9
-- og tak for point ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester