Citat:
Ursprungligen postat av
Numse
Ser dock ingen lösning till det. Hade kanske funkat med frames, men det är ju gammalt skräp.
Hur fungerar AJAX som du nämnde?
Så här kan du redigera urlen hos klienten utan att hela sidan laddas om, men det stöds dock inte av alla webbläsare, men det tycks inte vara ett problem för dig.
https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Manipulating_the_browser_history#Adding_and_modify ing_history_entries
Det fungerar som du skrev, men går även att göra mer avancerat genom att posta data till servern också. Använder du jQuery kan du titta på dessa sidor.
http://api.jquery.com/jquery.ajax/
http://api.jquery.com/jquery.get/
http://api.jquery.com/jquery.post
Ett sätt att få det att fungera även för personer utan javascript är att använda dig av exempelvis PHP. Du sätter upp en sida som dynamiskt hämtar den specifika sidan klienten efterfrågar. Ett exempel som inte ska användas utan att fixa säkerhetshålet med att man kan inkludera sidor hejvilt.
[PHP]<?php
$page = (isset($_GET['page'])) ? 'index' : $_GET['page'];
include 'top.php';
include './pages/'.$page.'php';
include 'bottom.php';
?>[/PHP]
När användaren sedan klickar i menyn ändrar du adressen till sida.nu/index.php?page=x. Förslagsvis skickar du även med data om att du endast vill ha med content-delen och inte top.php och bottom.php också vid ditt AJAX anrop. Nu borde även sidan fungera om man inte använder javascript, dessutom borde det fungera att direktlänka till sidorna!