このレンダリングされていない要素の絶対座標がある場合(つまり、JS変数からプルしたり、どこかから読み取ったり、ハードコーディングしたり<style>
、ページ上のタグから読み取るスクリプトを記述したりすることができます... )、次に次のようなことを行うことができます:
var viewport = {
x : 0,
y : 0,
width : 0,
height : 0,
update : function () {
this.x = document.body.scrollLeft || document.documentElement.scrollLeft;
this.y = document.body.scrollTop || document.documentElement.scrollTop;
this.width = document.documentElement.clientWidth;
this.height = document.documentElement.clientHeight;
}
};
これで、要素のx、y、width、heightとビューポートのx、y、width、heightの交差を確認できるようになります。
ユーザーがスクロールするときはいつでも、を押すだけviewport.update();
です。
私はこれを言います:
このメソッドは<!doctype>
かなりクロスブラウザー互換である必要がありますが、IE6に関しては、特にQuirksmode( htmlファイルにはありません)に関しては、実際には何の保証もできません。