基本的に私がやっているのは、水平スクロールが変更されたかどうかを確認するリスナーです。スクロールが変更された場合、div の位置が変更されるため、常にビューポートの左上隅に配置されます。値を使用するのは非常に簡単getScroll()
です。
しかし、どうすれば左から右に変更できますか? 問題はそのとおりです: 0 は div を画面のほぼ中央に配置し、スクロールまたはズームによってそこにとどまるため、機能しません (Windows Phone 7 はサポートしていませんposition: fixed
!) おそらく誰かが同様の問題に遭遇し、修正または正しく計算する方法を見つけましたか?
また、body が常に 1024px (ビューポート サイズと同じ) なのはなぜですか? また、ウェブサイトの合計サイズを取得する方法はありますか?
これまでに使用した変数は次
のとおりですwindow.getScroll().x
。document.body.scrollWidth
window.innerWidth
body {
width: 2000px;
height: 2000px;
}
#rightDiv {
right: 0px;
top: 0px;
position: fixed;
}
<body>
<div id='rightDiv'>
I am in the right-top corner </div>
</body>