[XHTML] vervanger voor frame & div-vraag

Pagina: 1
Acties:

  • Emboss
  • Registratie: September 2003
  • Laatst online: 25-01 22:49
Ik probeer een site op te zetten volgens de XHTML standaard in combinatie met CSS. Op eerdere sites die ik gemaakt heb gebruikte ik frames zodat niet de hele pagina opnieuw geladen hoefde te worden. Nu heb ik twee vragen.

1. Wat ik begrepen heb is dat je in de XHTML strict DTD geen frames meer kunt gebruiken. Is er dan een andere manier gekomen om een gedeelte aan te geven op je pagina waarvan de content verandert zonder dat de hele site opnieuw wordt geladen?

2. Ik heb eindelijk door dat je gedeeltes van je pagina kan aangeven met div. Als ik nu een opzet/lay-out heb gemaakt voor mijn site in XHTML en ik ga naar een ander gedeelte van mijn site (met dezelfde lay-out), moet ik dan een nieuwe pagina schrijven met andere content of kan ik de inhoud van een div zomaar aanpassen (zonder PHP of iets dergelijks)?

All my life, I always wanted to be somebody. Now I see that I should have been more specific.


Verwijderd

Je probeerd een oplossing te bedenken voor iets wat al bestaat, nl cache. De pagina en de verschillende onderdelen van de site worden 1 x ingeladen, waarna alleen nog maar nieuwe elementen (van andere pagina's dus) van de server afgehaald worden.

Dit geeft hetzelfde effect als een oplossing met frames.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

1. Wat ik begrepen heb is dat je in de XHTML strict DTD geen frames meer kunt gebruiken. Is er dan een andere manier gekomen om een gedeelte aan te geven op je pagina waarvan de content verandert zonder dat de hele site opnieuw wordt geladen?
Ja, de XHTML frameset DTD gebruiken :Y)
2. Ik heb eindelijk door dat je gedeeltes van je pagina kan aangeven met div. Als ik nu een opzet/lay-out heb gemaakt voor mijn site in XHTML en ik ga naar een ander gedeelte van mijn site (met dezelfde lay-out), moet ik dan een nieuwe pagina schrijven met andere content of kan ik de inhoud van een div zomaar aanpassen (zonder PHP of iets dergelijks)?
Ook dat is mogelijk. Maar meestal eis je dan van de browser weer een behoorlijke capaciteit aan bijv. JavaScript e.d., en dan schiet je imo je doel voorbij.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Emboss
  • Registratie: September 2003
  • Laatst online: 25-01 22:49
Verwijderd schreef op 30 januari 2004 @ 09:19:
Je probeerd een oplossing te bedenken voor iets wat al bestaat, nl cache. De pagina en de verschillende onderdelen van de site worden 1 x ingeladen, waarna alleen nog maar nieuwe elementen (van andere pagina's dus) van de server afgehaald worden.
Dit geeft hetzelfde effect als een oplossing met frames.
Als ik de content van één div zou verander (dus bijeen andere pagina van de site), moet toch de hele html weer geladen worden. Goed de plaatjes etc. staan dan nog in het geheugen. Je krijgt wel zo'n , IMHO irritante, schermrefresh van de hele pagina ipv dat ene kleine stukje.

[ Voor 44% gewijzigd door Emboss op 30-01-2004 09:25 ]

All my life, I always wanted to be somebody. Now I see that I should have been more specific.


Verwijderd

Emboss schreef op 30 januari 2004 @ 09:16:
1. Wat ik begrepen heb is dat je in de XHTML strict DTD geen frames meer kunt gebruiken. Is er dan een andere manier gekomen om een gedeelte aan te geven op je pagina waarvan de content verandert zonder dat de hele site opnieuw wordt geladen?
ja, namelijk php... includen in php heb je (nou ja, bijna) geen kennis van php voor nodig, en het gaat (vind ik) veel lekkerder dan frames, je kunt binnen tabelletjes, divjes, of td's blijven werken :)

het komt er dan ong. zo uit te zien:
code:
1
<a href="?page=news/news">Nieuwsberichten!</a>

dat is het linkje, en we gaan er vanuit dat news.html in de map 'news' staat.
code:
1
2
3
4
5
6
7
8
9
10
11
12
<?php

// zorgen dat als er geen link word aangeklikt hij home.html inlaad

if ($_REQUEST[page]=="") { $_REQUEST[page]=="home"; }

// en de shit includen :)

$filename = "$_REQUEST[page].html";
include $filename;

?>

that's all... je zult zien dat het heel fijn werkt

(en ja, mijn code is een beetje brak, maar ik ben niet zo'n grote perfectionist, het werkt zo iig (bij mij :> ))

[ Voor 17% gewijzigd door Verwijderd op 30-01-2004 09:27 . Reden: vergeten af te sluiten :* ]


  • Emboss
  • Registratie: September 2003
  • Laatst online: 25-01 22:49
drm schreef op 30 januari 2004 @ 09:20:
Ja, de XHTML frameset DTD gebruiken :Y)
Volgens mij heb ik ergens overheen gelezen. |:( :Z 8)7

All my life, I always wanted to be somebody. Now I see that I should have been more specific.


  • faabman
  • Registratie: Januari 2001
  • Laatst online: 08-08-2024
dan wordt de pagina nog wel gewoon helemaal herladen hoor, PHP == serverside...

Op zoek naar een baan als Coldfusion webdeveloper? Mail me!


Verwijderd

2. Ik heb eindelijk door dat je gedeeltes van je pagina kan aangeven met div. Als ik nu een opzet/lay-out heb gemaakt voor mijn site in XHTML en ik ga naar een ander gedeelte van mijn site (met dezelfde lay-out), moet ik dan een nieuwe pagina schrijven met andere content of kan ik de inhoud van een div zomaar aanpassen (zonder PHP of iets dergelijks)?
Het ligt eraan of er één of meerdere div's een andere inhoud moeten krijgen. Als er slechts één div een andere inhoud moet krijgen, kan je in die div een iframe neerzetten. Dat zou een aardige oplossing zijn, al denk ik niet dat iframes wel toegestaan zijn volgens DTD Strict.

Een andere methode is met javascript, met behulp van de HttpRequest methode. Daarmee kan je data versturen naar en ophalen van een server, zonder dat daarvoor een pagina of (i)frame opnieuw geladen hoeft te worden. Nadat je nieuwe data hebt opgehaald van de server kan je die eenvoudig in een div element zetten.

[ Voor 21% gewijzigd door Verwijderd op 30-01-2004 10:18 ]


Verwijderd

Emboss schreef op 30 januari 2004 @ 09:23:
Als ik de content van één div zou verander (dus bijeen andere pagina van de site), moet toch de hele html weer geladen worden. Goed de plaatjes etc. staan dan nog in het geheugen. Je krijgt wel zo'n , IMHO irritante, schermrefresh van de hele pagina ipv dat ene kleine stukje.
Ik zal eens een voorbeeldje online zetten van een frame-achtige opzet met een aantal plaatjes en fake tekst, je zal zien dat het wel meevalt.

Verwijderd

Bij frames moet er toch meer geladen worden?! Al die pagina's. Zeker bij de eerste load is dat erg inefficient. Daarnaast wordt tegenwoordig toch alles perfect gecached, dus is er geen verschil (op de meeste sites), behalve dan dat frames een aantal nadelen hebben die uitvoerig zijn besproken.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Anne:
Bij frames moet er toch meer geladen worden?! Al die pagina's. Zeker bij de eerste load is dat erg inefficient.
Wat een kletskoek. Alsof 2 requests van 2 extra pagina's wat uit maakt, naast al die andere connecties die je maakt voor css, gfx en js.

En caching is, zoals je zegt, redelijk aardig (behalve list-images en background images in Internet Explorer, dan), dus je eigen argument gaat niet eens op.
Daarnaast wordt tegenwoordig toch alles perfect gecached, dus is er geen verschil (op de meeste sites),
Afgezien van het renderen, wat in sommige gevallen heel veel uit kan maken, zeker op tragere pc's. Er is helemaal niets op tegen frames te gebruiken, tenzij je er echt praktische (onderhouds/schaalbaarheids)problemen aan ondervindt.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

Wat een kletskoek. Alsof 2 requests van 2 extra pagina's wat uit maakt, naast al die andere connecties die je maakt voor css, gfx en js.
Je hebt gelijk, vooral het opbouwen en renderen ervan gaat niet echt snel, het inladen gaat opzich wel redelijk.
En caching is, zoals je zegt, redelijk aardig (behalve list-images en background images in Internet Explorer, dan), dus je eigen argument gaat niet eens op.
Waar kan ik daar info over vinden? Bij mijn weten is geld dat alleen in heel specifieke gevallen en hangt het er ook vanaf wat je als instellingen hebt in IE, aangezien de meeste developers/designers een of ander cache knopje veranderen.
Er is helemaal niets op tegen frames te gebruiken, tenzij je er echt praktische (onderhouds/schaalbaarheids)problemen aan ondervindt.
Je gaat me toch niet vertellen dat dit het enige nadeel is wat je kent, of wel? Indien ja, zoek a.u.b. even rond op het internet (of hier op tweakers), want er zijn al aardig wat discussies over geweest.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Anne:
Waar kan ik daar info over vinden?
Geen idee, ik merk het alleen regelmatig. Kan me niet schelen of daar technische info over is; fact is dat er dus mensen zijn die daar last van kunnen hebben.
Bij mijn weten is geld dat alleen in heel specifieke gevallen en hangt het er ook vanaf wat je als instellingen hebt in IE, aangezien de meeste developers/designers een of ander cache knopje veranderen.
Mja, maar wat heeft de bezoeker daar voor boodschap aan?
Je gaat me toch niet vertellen dat dit het enige nadeel is wat je kent, of wel?
Nou, overtuig me dan eens met een paar knallende nadelen ...

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • André
  • Registratie: Maart 2002
  • Laatst online: 26-05 00:33

André

Analytics dude

drm schreef op 30 januari 2004 @ 13:42:
Nou, overtuig me dan eens met een paar knallende nadelen ...
[rml][ frames zijn uit].. is er een vervanger?[/rml]

Daar worden er genoeg genoemd, vooral door Bosmonster:

[rml]Bosmonster in "[ frames zijn uit].. is er een vervanger?"[/rml]

[ Voor 11% gewijzigd door André op 30-01-2004 14:12 ]

Pagina: 1