18 berichten aan het bekijken - 1 tot 18 (van in totaal 18)
  • Q:
    Bijdrager
    tijs

    Dropdown lijst naar ander frame

    Ik heb een dropdown menu lijst gemaakt die een pagina zou moeten doen openen in een ander frame binnen dezelfde frameset. Allemaal mooi en wel, blijkt nu dat enkel Safari in staat is om dat te doen. IE, Netscape en Camino doen gewoon niks.

    Dit staat in de head:

    [code:1:ac9f671a9f]<script language="JavaScript">
    <!–
    function MM_jumpMenu(targ,selObj,restore){ //v3.0
    eval(targ+".location=’"+selObj.options[selObj.selectedIndex].value+"’");
    if (restore) selObj.selectedIndex=0;
    }
    //–>
    </script>[/code:1:ac9f671a9f]

    En dit staat in de body:

    [code:1:ac9f671a9f]<select name="menu1" onChange="MM_jumpMenu(’NAAM_VAN_ANDER_FRAME’,this,0)" style="background-color:#FFFFFF; font-size: 10; color: #000000; font-family: Verdana, Arial, Helvetica">
    <option value="optie1.html" selected>Optie1
    <option value="optie2.html">Optie2
    </select>[/code:1:ac9f671a9f]

    Wat moet ik doen om ervoor te zorgen dat andere browsers het ook goed doen?

    Bijdrager
    jeneverstoker
    ”tijs”

    Ik heb een dropdown menu lijst gemaakt die een pagina zou moeten doen openen in een ander frame…. Wat moet ik doen om ervoor te zorgen dat andere browsers het ook goed doen?

    Als ik het goed begrijp wil je een gekozen pagina uit de dropdownlist laten verschijnen in een ander frame. Dat kan met standaard HTML via de tag:

    <A href=URL target=NAAM>

    waarbij je URL vervangt door de naam van de te laden pagina en NAAM door de naam van het frame waar de pagina in moet verschijnen. Ik heb jaren geleden (toen ik nog fanatiek met OS/2 aan de gang was en er geen Apple in huis aanwezig was) een site gemaakt die ook langs die weg werd bestuurd. Die bestaat nog steeds, al wordt die inhoudelijk nu bijgehouden door een ander. De layout is echter nooit veranderd. Surf er eens naar toe en werp een blik op de broncode van het top- en de zijframes. Dat zou je wat verder moeten helpen.
    De site staat op: http://os2.mensys.nl/switchboard/index.html

    succes,

    Hans

    Bijdrager
    tijs

    op welke plaats in dat script wordt het target frame gegeven?

    Bijdrager
    jeneverstoker
    ”tijs”

    op welke plaats in dat script wordt het target frame gegeven?

    Tsja, ik dacht: dat ziet-ie wel ergens in de code… Het is al weer een tijd geleden dat ik die site gemaakt heb. Eerlijk gezegd kan ik dus niet meer reproduceren. Maar ik vermoed het volgende: in de pagina menu.html zit de volgende javascript-functie:

    <SCRIPT LANGUAGE=”JavaScript”>
    <!–
    function load(form) {
    var url = form.list.options[form.list.selectedIndex].value;
    if (url != “”) parent.frames[1].location.href = url;
    return false;
    }

    Vermoedelijk wijst de [1] na parent.frames naar frame nummer 1 van de oorspronkelijke frameset (waarin menu.html dan geladen is in frame 0). Ik weet het niet zeker, heb de broncode niet meer online om het uit te proberen. De functie heb ik destijds ergens van het web geplukt. Succes in ieder geval. Hoop dat je er verder mee komt.

    Hans

    Moderator
    Strifer

    kun je niet in de option value ook een “target=” command aangeven?

    Bijdrager
    Thom

    Nee, Thijs werkt met Dreamwever.
    Daar staat die optie dan niet bij.

    Ik heb dezelfde vraag.

    Bijdrager
    tijs

    Ik heb nu het volgende script gebruikt en dat werkt perfect. In de head komt (moet niets in veranderd worden):

    [code:1:738f2d5363]<script>
    <!–
    function land(ref, target)
    {
    lowtarget=target.toLowerCase();
    if (lowtarget=="_self") {window.location=loc;}
    else {if (lowtarget=="_top") {top.location=loc;}
    else {if (lowtarget=="_blank") {window.open(loc);}
    else {if (lowtarget=="_parent") {parent.location=loc;}
    else {parent.frames[target].location=loc;};
    }}}
    }
    function jump(menu)
    {
    ref=menu.choice.options[menu.choice.selectedIndex].value;
    splitc=ref.lastIndexOf("*");
    target="";
    if (splitc!=-1)
    {loc=ref.substring(0,splitc);
    target=ref.substring(splitc+1,1000);}
    else {loc=ref; target="_self";};
    if (ref != "") {land(loc,target);}
    }
    //–>
    </script> [/code:1:738f2d5363]

    In de body komt:

    [code:1:738f2d5363]form action="dummy" method="post">
    <div align="center">
    <select name="choice" size="1" onChange="jump(this.form)" style="background-color:#FFFFFF; font-size: 10; color: #000000; font-family: Verdana, Arial, Helvetica">
    <option value="watjemaarwil.html*jouwtarget">Selecteer …</option>
    <option value="watjemaarwil.html*jouwtarget">2impress Decoration
    <option value="watjemaarwil.html*jouwtarget">2impress Flags
    </select>
    </div>
    </form>[/code:1:738f2d5363]

    De target geef je dus aan na de *

    Bijdrager
    jeneverstoker
    ”tijs”

    Ik heb nu het volgende script gebruikt en dat werkt perfect. In de head komt (moet niets in veranderd worden):

    Mooi dat het nu werkt! Geef maar eens een URL zou ik zeggen, dan kunnen we het resultaat zien!

    Hans

    Bijdrager
    tijs

    ik heb het gebruikt op http://www.oefenfirma.be (bij het onderdeel oefenfirma’s)

    Bijdrager
    jeneverstoker
    ”tijs”

    ik heb het gebruikt op http://www.oefenfirma.be (bij het onderdeel oefenfirma’s)

    Gauw even gekeken. Ziet er goed uit en werkt prima. Mission accomplished…

    Hans

    Moderator
    Strifer

    werkt goed hier, maar zou veel simpeler moeten kunnen lijkt me. alleen vertrouwen op een programma als dreamweaver laat je snel vastlopen bij dergelijke problemen.

    toch altijd wel handig dat je op fora terecht komt, zelf kijk ik ook bij htmlforums.com… erg handig want daar krijg je ook altijd snel antwoord.

    Bijdrager
    Syndic

    [code:1:8d1d094ea0]<select name="menu1" onChange="MM_jumpMenu(’jouwFrame’,this,1)" class="jumpmenu">
    <option value="#" selected>— Maak uw keuze —</option>
    <option value="voorbeeld.html">keuze 1</option>
    <option value="voorbeeld.html">keuze 1</option>
    <option value="voorbeeld.html">keuze 1</option>
    </select>[/code:1:8d1d094ea0]

    Deze gebruik ik om content te laden in een iFrame die ook weer in een ander frame staat. Komt geen Form tag aan te pas.

    Bijdrager
    4

    Ik wil even reageren op de code van Syndic hierboven.
    Helaas kom ik er niet uit. Kun je mij a.u.b. helpen?
    Moet ik “this” in de code ook wijzigen?
    Mijn probeersels kun je vinden op
    http://iti.fol.nl/frames.
    De code staat in http://iti.fol.nl/frames/topframe.html . Wat doe ik hier fout?

    Bijdrager
    Syndic

    Ten eerste dit:

    [code:1:dc18e19741]<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
    <meta name="ProgId" content="FrontPage.Editor.Document">
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">[/code:1:dc18e19741]

    Argh… Microshit Frontpage:P Foei! Ga je schamen!

    Probeer deze code ‘s:
    [code:1:dc18e19741]<select name="topframe" onChange="MM_jumpMenu(’mainframe’,this,1)" class="jumpmenu">
    <option value="1" selected>— Maak uw keuze —</option>
    <option value="keuze1.html">keuze 1</option>
    <option value="keuze2.html">keuze 2</option>
    <option value="keuze3.html">keuze 3</option>
    </select>[/code:1:dc18e19741]

    Deze code is wel alleen gemaakt om een pagina in een iFrame in hétzelfde frame te laden. Dus die iFrame staat in hetzelfde frame als het dropdown menu staat…

    Bijdrager
    4

    1) Ook met deze code krijg ik weer een foutmelding: “‘mainframe’ is niet gedefinieerd.”

    2) Ik ben op zoek naar een code waardoor een pagina wordt geladen in een ANDER FRAME als het frame waarin het dropdown menu staat. Of kan dit niet??

    Bijdrager
    Syndic

    In de bovenstaande gegeven codes zou het moeten lukken… niet die van mij dan maar die codes die boven mijn posts staan.

    Of anders Google?

    Bijdrager
    4

    Bedankt voor je snelle reacties, Syndic!
    Ik heb de code van Tijs (hierboven geplaatst op 21-10-03) gebruikt en dat werkt perfect! Bedankt Tijs!
    Bij gebruik van de code van Tijs verandert slechts 1 frame. Ik wil echter tegelijkertijd) 3 van de 4 frames veranderen.
    Weet iemand misschien hoe ik na het gebruik van het dropdown menu 3 pagina’s in 3 van de 4 schermen kan laden? Of is dit te veel gevraagd??

    Bijdrager
    zzid

    ik dacht dat dit wel werkte:

    <ahref=”javascript:onClick=parent.frames[naamframe].location=’jouwhtmldoc.html’;parent.frames[naamframe].location=’jouwhtmldoc.html’;>

    hiermee kan je oneindig doorgaan:wink:

18 berichten aan het bekijken - 1 tot 18 (van in totaal 18)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.