th_wolfgang
New member
Hallo,
wie kann ich es erreichen, das meine Webseite, weiche Übergänge (langsam einblenden etc.) beim Umschalten ausgibt, z.B. wenn jemand auf einen Button, internen Link drückt oder im Menu „weitergeht“. Geht sowas per .htaccess oder JavaScript / CSS? Momentan hackt das alles ein wenig beim Umschalten, daher dachte ich an einen „weichen“ Übergang.
Ich habe zwar bereits etwas gefunden CSS3, mir wäre JavaScript-Lösung allerdings lieber, da ich dann (hoffe ich wenigstens) dann nicht jede DIV einzeln anpassen muss.
So funktioniert es schon mal nicht:
Leider geht es so auch nicht! Wo ist denn der Fehler?
Danke & LG
Wolf
wie kann ich es erreichen, das meine Webseite, weiche Übergänge (langsam einblenden etc.) beim Umschalten ausgibt, z.B. wenn jemand auf einen Button, internen Link drückt oder im Menu „weitergeht“. Geht sowas per .htaccess oder JavaScript / CSS? Momentan hackt das alles ein wenig beim Umschalten, daher dachte ich an einen „weichen“ Übergang.
Ich habe zwar bereits etwas gefunden CSS3, mir wäre JavaScript-Lösung allerdings lieber, da ich dann (hoffe ich wenigstens) dann nicht jede DIV einzeln anpassen muss.
So funktioniert es schon mal nicht:
Code:
$(document).ready(function() {
$("body").hide().delay(1000).fadeIn()
$('a').click(function() {
url=$(this).attr("href")
$("body").fadeOut('slow', function() {
window.location.replace(url);
});
return false;
});
});
Leider geht es so auch nicht! Wo ist denn der Fehler?
Code:
<script type="text/javascript">
// code direkt nach seitenaufbau starten
$(document).ready(function()
{
// allen links im div 'navigation' & 'content' eine click()-funktion zuweisen
// es wird auch auf alle links von der dynamisch nachgeladenen
// seiten reagiert (solange die seiten in das content-div geladen werden)!
$("#nav-container a, #body a, #content a").live("click",function()
{
// das link-ziel jeweils auslesen & zwischenspeichern
var pageToLoad = $(this).attr("href");
// varaible für den neuen inhalt
var pageContent;
// die externe seite laden, der inhalt ist dann in 'data'
$.get(pageToLoad, function(data)
{
// den inhalt zwischenspeichern
pageContent=data;
// content-div langsam ausblenden
$("#content").fadeOut("slow", function()
{
// wenn das ausblenden fertig ist, inhalt an das content-div übergeben
$("#content").html(pageContent);
// content-div langsam wieder einblenden lassen
$("#content").fadeIn("slow");
// oder in kurzer form (vorzuziehen)
// $("#content").html(pageContent).fadeIn("slow");
});
});
// wichtig! sonst wird der a-link im browser aufgerufen!
return false;
});
});
</script>
Danke & LG
Wolf
Zuletzt bearbeitet: