Har lite problem med ett script
<script>
$('a').click(function(e){
e.preventDefault();
$('#maincontent').fadeOut('fast',function(){
$('#maincontent').load(this.href + ' #maincontent',function(){
$('#maincontent').fadeIn('fast');
});
});
});
</script>
Om jag kör bara load-funktionen, så funkar det någorlunda bra, förutom att den lägger till #maincontent från den begärda sidan i det befintliga #maincontent-blocket, så det blir två containers inuti varandra. Hur löser man det?
Iallafall, när jag kör fadeOut innan .load, så händer det inget :(
Det är inte så konstigt då this.href pekar mot #maincontent det du få göra är att spara à-elementets this i en variabel som du kan komma åt längre ner i din kod.
Om ingen har postat svaret på hur man kan skriva (sitter inte vid en dator nu) så postar jag rätt kod ikväll
Det är inte så konstigt då this.href pekar mot #maincontent det du få göra är att spara à-elementets this i en variabel som du kan komma åt längre ner i din kod.
Om ingen har postat svaret på hur man kan skriva (sitter inte vid en dator nu) så postar jag rätt kod ikväll
var link = this;
Nåt sånt menar du? Och att sen referera till link istället för this?
EDIT: Funkade lysande :)
Men hur löser jag det med att .load inte bara lägger in innehållet från #maincontent i boxen (med samma id), utan även själva boxen #maincontent? Blir en box i boxen, båda med samma id.
Om du vill ersätta den så kör inte .load kör vanlig .ajax och på success så filtrera du ut datan och kör en $('#maincontent').replaceWith(newMainContent);
Jag får inte riktigt till det, vill spara ner boxen #maincontent från länkadressen i en variabel, och har försökt med följande
var ajax;
$.get(link.href + ' #maincontent',function(data){ ajax = data; alert(ajax); });
Då verkar det inte köras över huvud taget :(
.get kan du inte använda dig av #maincontent (vad jag känner till)
Men:
$.get(link.href, function(data) {
var main = $("#maincontent"),
replaceMain = $("#maincontent", data);
main.replaceWith(replaceMain);
});
Tack så jättemycket! Grymt av dig att hjälpa till så här :)
Det funkade alldeles utmärkt med din kod!