0

ユーザーがページをクリックしている場所に応じて、Jqueryを使用して絶対DIVを配置しようとしています。

現時点では、これは非常にうまく機能します

$('#window').css('left', jsEvent.pageX);
$('#window').css('top', jsEvent.pageY);

これにより、マウスが画面をクリックした場所に要素が正確に配置されます...

下にスクロールするまではそうです。そのため、ページの上部からのピクセル数を考慮に入れたものを実現しようとしています。こんな感じで…

$('#window').css('top', jsEvent.pageY + scrollTop());

トリックを行うでしょう、残念ながらそれは機能しません。

ヒントはありますか?

ありがとう、

ティム

4

1 に答える 1

1

これは間違いなくFirefoxで機能します。そのため、Chrome、Safari、Operaで動作するはずです。IE、しかし、私は完全に確信していません。試してみます。

$('#window').css({
    left: e.clientX
    , top: e.clientY + document.documentElement.scrollTop
});

編集:この新しいバージョンは、すべてではないにしても、ほとんどのブラウザで動作するはずです。

var rxp = /webkit/gi;

$('#window').css({
   left: e.clientX
   , top: e.clientY + rxp.test(window.navigator.userAgent) ? document.body.scrollTop : document.documentElement.scrollTop
}); 
于 2010-05-16T04:51:25.987 に答える