DOM

Window.screenX プロパティ

 編集:2022.09.09 by T.A.

読取専用。→

画面の左端から Window のユーザーのブラウザーのビューポートまでの水平距離を CSS ピクセル数で返します。

注: screenX の別名である が、最近は新しいブラウザー間で実装されていました。これはもともと IE のみが対応していましたが、有名であるためあらゆる場所で導入されています。

構文
Window.screenX
Window Window

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

)の例では、円が描かれたキャンバスを見ることができます。この例では、Window.screenLeft/Window.screenTop に加えて Window.requestAnimationFrame() を使用することで、ウィンドウの位置を移動しても画面上の一定の物理的な位置に円を描き続けます。

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);
W=window.open();

開いたウインドウを別画面にして、ウインドウの位置をずらして、

D=W.screenX	//=125。(サンプル値)

テスト