2011-07-12 18 views
0

私は椅子の小さなスキームを持っています。私が椅子の上を動かすと、jQueryで少しポップアップが表示されます。ポップアップの位置は、私が上に乗る椅子のoffset()に基づいています。jQueryアニメーション/オフセット問題

私がスクロールすると、ポップアップはドキュメント内の同じ場所に残りますが、マウスの上に置かれた椅子に合わせる必要があります。

Here's an example

$(document).ready(function(){ 
    $(".sp_seat").live('mouseover', function() 
    { 
     var id = $(this).attr('id'); 

     var x = $(this).offset().left; 
     var y = $(this).offset().top; 

     $('#seat_'+id).css({"left":(x+30)+"px","top":(y+10)+"px"}); 

     $('#seat_'+id).fadeIn('fast'); 

    }); 

    $(".sp_seat").mouseout(function() 
    { 
     $('.username').fadeOut('fast'); 
    }); 

    $(".free").click(function() 
    { 
     var id = $(this).attr('id'); 
     window.location='?page=event/seatplan&action=pick&seat='+id; 
    }); 
}); 

これは私が今持っているjQueryコードです。

ありがとうございます。

答えて

1

こんにちはページのスクロール位置にあなたのYPOSを追加することができる必要があり、

変更この行:

$('#seat_'+id).css({"left":(x+30)+"px","top":(y+10)+"px"}); 

へ:これは助けていないようです

$('#seat_'+id).css({"left":(x+30)+"px","top":(y+10)+$(document).scrollTop()+"px"}); 
+0

。それを確認できますか? http://bit.ly/nfNPV4 – Roel

+0

申し訳ありませんが、offset()の代わりにjquery position()を使用すると、ドキュメントではなく椅子の相対的な位置が取得されます – Gary