Nettsia ble vist ikke helt ferdig, men nå er denne oppgaven levert. Har lært mye mer av deg enn på dette temaet enn av noen annen. Men jeg skulle gjerne ha lært meg å sette opp en slik dynamisk nettside som fungerer skikkelig med navigeringen. Enten med history.js eller pushState og popState...
Den blir 0 når jeg først trykker på en tab når jeg befinner meg på forsiden
Den blir rundt 625 når jeg er i "content" og trykker på en tab
Ser ingenting galt her?
merkelig...
Hvis jeg skriver:
$(window).add("#content").scrollTop(0);
Hopper den til toppen hver gang.
Hvis jeg skriver:
if($(window).scrollTop() < 300) {
$(window).add("#content").scrollTop(0);
}
Så dropper den helt å hoppe til tops uansett hvor jeg befinner meg...
hmm... den er ikke laggy, men nå hver gang jeg trykker på en tab, så hopper den til top først for så å utføre animasjonen ned til innholdet. Klarer ikke helt å forstå hvorfor...
Det er jo en scrolltop der, men den la jeg inn slik at innholdet i content skal scrolles til top, ikke hele siden...
Jeg klarer ikke å finne noen god løsning på det her... har rotet rundt med mange forskjellige løsninger som ikke fungerte... det mermeste jeg kom var dette:
$(function() {
var page = window.location.hash.split("#")[1] + '.html';
$('#content').load(page)...
Eller hva med å bare bruke hashtags igjen?
window.location.hash = $(this).attr('href');
Den la til en hashtag i urlen, men gjorde det ikke mulig å bruke fram og tilbake knappene til å navigere gjennom sidene. Vanligvis fungerer jo dette? Er det e.preventDefault(); som roter det til?
Takk, det fungerte.
Jeg har også rotet litt rundt med popstate. La til denne, som gjorde at frem og tilbake knappen fungerte. Men hvis jeg forlater siden og trykker tilbake, fungerer den ikke, heller ikke om jeg oppdaterer siden. Noe jeg er nødt til å få til. Var så vanskelig å finne noen god...
Et problem. Nettsia ligger på nettside.no/sidenavn¨
Når jeg navigerer på sia blir jeg da sendt til nettside.no/side1 osv..
istedenfor nettside.no/sidenavn/side1
Jeg prøvde å fikse det selv på denne måten:
$(".menu a").on('click', function(e) {
e.preventDefault()...
Pga. ".load" så endrer ikke url-en seg. Jeg husker du nevnte history api, men tror jeg fant noe mye enklere. pushstate
https://developer.mozilla.org/en-US/docs/DOM/Manipulating_the_browser_history
Prøvde å legge den til nederst som jeg gjorde her, men fikk den ikke til å fungere hva enn jeg...
Men en ting fungerte ikke som den skal.
<script type="text/javascript" src="http://www.yr.no/sted/Norge/Buskerud/Hemsedal/Hemsedal_Feriesenter/ekstern_boks_tre_dager.js"></script>
Prøv å legg dette scriptet i en av html filene du henter inn med .load
Den vises ikke... men fungerer fint...
Dette nettstedet bruker informasjonskapsler (cookies) for å tilpasse innholdet, skreddersy din opplevelse og holde deg innlogget dersom du registrerer deg.
Ved å fortsette og bruke dette nettstedet, samtykker du i bruken av informasjonskapsler.