Obtenir la position d'un fixe div avec jquery

J'ai un div avec la position "fixe" et je veux obtenir la valeur de sa position par rapport à l'ensemble du document lorsque l'utilisateur fait défiler la page.

Donc, disons que je place la div (x=0,y=0) et ensuite, l'utilisateur fait défiler vers le bas un peu et maintenant, par rapport à la, la div est sur (X=0,y=300). Je veux obtenir cette information, je veux savoir la position exacte de la div à chaque instant, de nouveau, par rapport à l'ensemble du document, de ne pas la fenêtre ou le navigateur.

J'ai essayé beaucoup de choses mais rien ne semble pour obtenir ce que je veux.

L'un d'eux est présent code, qui ne fonctionne pas dans le cas d'un fixe div:

var position = $("#fixed").offset(); /*it gets the position of the div
                                     "fixed" relative to the document*/
$("#fixed").html(position.top);      /*it prints the obtained
                                     value on the div "fixed"*/

Ici vous pouvez trouver le code en cours d'exécution, et vous pouvez voir que, lorsque vous faites défiler vers le bas, la valeur de la position de la div ne change pas.

Si je ne me trompe pas, le code doit imprimer une nouvelle valeur sur la div chaque fois qu'il change sa position verticale par rapport au document. Mais il s'avère que cela n'arrivera pas.


RÉSOLU:

La question a été tranchée par codef0rmer. J'ai été absent pour suivre le défilement pour actualiser la valeur de la position de la div. J'ai été un idiot. Donc le code final fonctionne très bien la façon dont il l'a écrit:

$(function () {
    var position = $("#fixed").offset();
    $("#fixed").html(position.top);

    $(window).scroll(function () {
       var position = $("#fixed").offset();
        $("#fixed").html(position.top);
    });
})

Et ici vous pouvez voir le code en cours d'exécution.

Merci à vous tous et spécialement à codef0rmer.

OriginalL'auteur m4rk | 2012-03-02