Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

file laden in iFrame

Anoniem
None
11 antwoorden
  • Ik ben een site aan het bouwen met onderstaande structuur.
    In het navigatie-frame gebruik ik de knoppen met aanwijseffect van Microsoft Frontpage 2000.
    Als er op een knop gedrukt wordt, dan wordt in de mainFrame de juiste pagina geladen.
    Ik wil echter dat de pagina in de iFrame geladen wordt.
    In de mainFrame wirdt een pagina geladen met daarin het iframe met de naam 'testiframe'.
    Na veel gezoek (o.a. http://www.quirksmode.org/?dom/contents.html) en geploeter kwam ik
    tot de volgende knopcode:

    <applet code="fphover.class" codebase="../" width="64" height="40">
    <param name="textcolor" value="#FFFFFF">
    <param name="color" value="#FF6600">
    <param name="hovercolor" value="#FF6600">
    <param name="effect" value="glow">
    <param name="target" value="mainFrame.document.frames ['testiframe']">
    <param name="image" valuetype="ref" value="../images/kn_home1.gif">
    <param name="hoverimage" valuetype="ref" value="../images/kn_home2.gif">
    <param name="url" valuetype="ref" value="home.htm">

    Dit werkt echter niet.


    ——————————————————
    | logo frame |
    |—————————————————-|
    | navi frame |
    | —————————————————|
    | mainFrame |
    | ——————- |
    | | \ |
    | | iFrame | |
    | | | |
    | ———————- |
    ——————————————————

    Iemand een idee?
  • De frames collectie is een property van het [i:4a0863a128]window [/i:4a0863a128]object en niet van het [i:4a0863a128]document [/i:4a0863a128]object, dus dat zal voor zover ik weet sowieso nooit werken. Wat je kan proberen is de [b:4a0863a128]name[/b:4a0863a128] parameter van het iframe (ik neem aan dat dat "testiframe" is) opgeven bij de target.

    Mocht dat niet werken dan kan je nog proberen de target leeg te laten en de source van de iframe via javascript te regelen, maar ik weet niet of je applet het toelaat dat je javascript bij de url param opgeeft. Voor de value van de [i:4a0863a128]url[/i:4a0863a128] zal je dan [b:4a0863a128]javascript:window.frames['testiframe'].location.href='pagina.htm'[/b:4a0863a128] moeten opgeven.


    p.s. Overigens raad ik het gebruik van de fphover.class buttons sowieso af, er zijn veel betere en mooiere oplossingen op het internet te vinden voor het gebruik van images als navigatie (met onmouseover effecten).
  • Zoals: http://www.pixy.cz/blogg/clanky/cssnopreloadrollovers/
  • Ik heb beide adviezen ter harte genomen. Inmiddels is de site omgebouwd naar het nieuwe css-menu. Dit eindigt met:

    <div id="menu">
    <a href="home.htm">Home</a>
    <a href="nieuws.htm">Nieuws</a>
    <a href="tips.htm">tips</a>
    </div>

    Het lukt me alleen nog niet om de paginas direct in het iFrame te laden.
  • [quote:95ca5f0b78="Ampere Voltage"]Het lukt me alleen nog niet om de paginas direct in het iFrame te laden.[/quote:95ca5f0b78]
    En wat is het probleem? Gokken waar het aan ligt is een beetje lastig zo (maar ik wil wel een poging wagen ;)).
    Werk je soms ook met 'normale' frames waardoor mijn eerdere oplossing niet naar het juiste object verwijst? In dat geval is het misschien makkelijk als je een testversie ergens online zet zodat we mee kunnen kijken of als je de relevante informatie verschaft via het forum.
  • Een beschrijving van de site? Zet je schrap.

    Het venster wordt verdeeld in 3 horizontale frames- Topframe, Mainframe en Bottomframe.
    Bottomframe - bevat alleen de sierrand helemaal beneden.
    Mainframe - hier moet alles gebeuren.
    Topframe - is zelf weer verdeeld in 3 frames- Boven(de sierrand), Midden(het logo) en Onder(het menu).
    Het css menu heb ik er weer uit gegooid en weer vervangen door een fphover.class- menu.

    In het mainframe zit een pagina met tabel met daarin weer een iFrame.
    Wordt er op een menuknop gedrukt, dan wordt de hele pagina vervangen door een nieuwe pagina
    die er precies hetzelfde uit ziet, maar waarin door de iFrame een andere inhoud wordt geladen.
    Al dit laden zorgt voor een lelijke witte flits. Ik wil dus alleen de inhoud van de iFrame verversen.

    voor de site kijk op: www.graffity.demon.nl/vandewaterbv2

    Alvast bedankt voor de moeite.
  • Probeer zoiets:
    <a href="home.htm" onclick="top.frames['mainFrame'].frames['home'].frames['home'].src=this.href">Home</a>

    De site ziet er leuk uit, maar de interne structuur en code is een ramp, een nachtmerrie om te onderhouden. Kennelijk niet als je frontpage hebt?

    [code:1:189ef3b988]
    <body style="filter:progid:DXImageTransform.Microsoft.Gradient(endColorstr='#899DDA',
    startColorstr='#00015D', gradientType='0');"
    [/code:1:189ef3b988]
    Dit maakt je achtergrond wel leuk, maar is wel IE only. Zorg iig voor een bijpassende kleur voor browsers die het niet ondersteunen.
  • Ik heb de fphoover.class buttons inmiddels vervangen door :

    <a href="index_home.htm" ><img src="../images/kn_home1.gif" name="te_" width="64" height="40" border="0" onMouseOver="this.src='../images/kn_home2.gif'" onMouseOut="this.src='../images/kn_home1.gif'" ></a>

    dit scheelt inderdaad erg veel tijd.
    [quote:264608ce6b]de interne structuur en code is een ramp, een nachtmerrie om te onderhouden. Kennelijk niet als je frontpage hebt? [/quote:264608ce6b]
    Hier is inderdaad wat ruimte voor verbetering, hoewel ik er zelf aardig weg in weet.

    [quote:264608ce6b]Dit maakt je achtergrond wel leuk, maar is wel IE only. Zorg iig voor een bijpassende kleur voor browsers die het niet ondersteunen.
    [/quote:264608ce6b]
    Dit heb ik inmiddels gedaan, tevens veel gezocht naar een javascriptje dat hetzelfde effect oplevert, maar niet gevonden.

    De aangereikte oplossing voor de iFrames werkt nog niet, maar ik blijf experimenteren.
  • Oeps, het had ook:
    <a href="home.htm" onclick="top.frames['mainFrame'].frames['home'].frames['home'].location.href=this.href">Home</a>
    moeten zijn.
  • Ook dit kreeg ik niet aan het werk, maar de oplossing bleek heel simpel.
    In het frame met het menu heb ik in de head het volgende geplaatst:
    <base target="iframehome"> Dit werkt.
    De invoegpagina's worden nu in dit ene iframe geladen.

    Een nieuw probleem is nu om het frame 'rechts' (met de flash) animatie door de file in het iframe te verversen. Dit lukt met:

    <script type="text/javascript">
    parent.parent.rechts.location.href=document.write="site1024/schadeherstel_rechts.html";
    </script>

    Maar eigenlijk wil ik alleen de swf vervangen en niet de hele pagina.
  • een tijdje terug heeft arnow dezelfde vraag gepost :Hoe kan ik een swf verwisselen met javascript.
    Een antwoord was:document.getElementsByTagName('embed')[0].src of iets dergelijks. (bedankt termin8or)

    Een ander antwoord ws: Jacco: Je kunt natuurlijk wel de SWF in een apart frame zetten en daar dan de source van veranderen

    Hier kom ik niet helemaal uit.

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.