setTimeout mit Fenster.Lage und $(this)

ich bin relativ neu hier und Frage mich, wenn jemand könnte mich in die richtige Richtung! Ich bin auf der Suche zu animieren, einige Aspekte der Seite laden, wenn im Menü links angeklickt werden.

$("document").ready( function() {

      $('.page_box_fade').css("display", "none")        
      .fadeIn('300');

      $(".nav_image").click( function(){

            $('.page_box_fade').fadeOut('300');                                 
            document.location = $(this).parent().attr("href");

            return false;           
      });
}); 

Dieser code scheint zu funktionieren(ish), wenn ich auf das Bild".nav_image", die enthielt innerhalb ein link, es blendet den Inhalt von div '.page_box_fade' und gleichzeitig leitet Sie an das 'href' - Attribut des angeklickten .nav_image übergeordneten link. Da ist ein 300ms verblassen, möchte ich das Skript, um diese aufzunehmen, bevor es umleitet, um die fade-tatsächlich für den Benutzer sichtbar.

$("document").ready( function() {

    $(".nav_image").click( function(){

            $('.page_box_fade').fadeOut('300');                                 
            setTimeout( "document.location = $(this).parent().attr('href')", 500 );

            return false;           
    });
}); 

Ich nehme an, setTimeout, wäre die Antwort aber $(this).parent().attr('href') ist undefiniert, wenn verwendet, die Art, wie ich dachte.

Dies ist die Struktur meiner html ein einfaches link:

<a href="?id=0">
    <img class="nav_image" src="images/home.png" alt="home" />
</a>

Jede Hilfe auf diesem würde sehr geschätzt 🙂

InformationsquelleAutor breakbeatkid | 2010-11-08
Schreibe einen Kommentar