1. 開発者向けのウェブ技術
  2. Web API
  3. Window
  4. screenTop

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

Window: screenTop プロパティ

Baseline 広く利用可能 *

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2018年12月以降、すべてのブラウザーで利用可能です。

* この機能の一部は、対応レベルが異なる場合があります。

Window.screenTop は読み取り専用プロパティで、ユーザーのブラウザーのビューポートの上端から、画面の上端までの垂直方向の距離を、 CSS ピクセル単位で返します。

メモ: screenTop は古い Window.screenY プロパティの別名です。screenTop は当初 IE のみが対応していましたが、普及に伴いすべての環境で導入されました。

ブラウザーのビューポートの上端から画面の上端までの CSS ピクセル数に等しい数値。

screenleft-screentop の例では、円が描画されたキャンバスが表示されます。この例では、screenLeft/screenTopWindow.requestAnimationFrame() を組み合わせて、ウィンドウの位置が移動しても画面上の物理的な位置を常に同じまま円を再描画しています。

js
initialLeft = window.screenLeft + canvasElem.offsetLeft;
initialTop = window.screenTop + canvasElem.offsetTop;
function positionElem() {
 let newLeft = window.screenLeft + canvasElem.offsetLeft;
 let newTop = window.screenTop + canvasElem.offsetTop;
 let leftUpdate = initialLeft - newLeft;
 let topUpdate = initialTop - newTop;
 ctx.fillStyle = "rgb(0 0 0)";
 ctx.fillRect(0, 0, width, height);
 ctx.fillStyle = "rgb(0 0 255)";
 ctx.beginPath();
 ctx.arc(
 leftUpdate + width / 2,
 topUpdate + height / 2 + 35,
 50,
 degToRad(0),
 degToRad(360),
 false,
 );
 ctx.fill();
 pElem.textContent = `Window.screenLeft: ${window.screenLeft}, Window.screenTop: ${window.screenTop}`;
 window.requestAnimationFrame(positionElem);
}
window.requestAnimationFrame(positionElem);

またコード内では、screenLeft に対応してかどうかを検出するスニペットもあり、対応していない場合は、screenLeft/screenTopWindow.screenX/Window.screenY を使用してポリフィルします。

js
if (!window.screenLeft) {
 window.screenLeft = window.screenX;
 window.screenTop = window.screenY;
}

仕様書

仕様書
CSSOM View Module
# dom-window-screentop

ブラウザーの互換性

関連情報

MDN の改良に協力

協力方法を知る

このページは MDN の貢献者によって に最終更新されました。

AltStyle によって変換されたページ (->オリジナル) /