DOM実践1-ページ上部に戻る
1329 ワード
DOMと熟練したHTMLとCSSの操作を明らかにするために、3つの小さなDemoの練習手をすることを決定して、まず1つの最も簡単な「トップに戻る」効果の需要を実現します:1つのボタンをクリックしてページの最上位に戻ります
まずレイアウトし、buttonを作成し、Idを'backToTop'とします.同時にこのボタンのCSSを設定して、常にページの右下に表示させます
ボタンコンポーネントはgetElementById()で取得し、onclickイベントを設定し、buttonリファレンスが成功したかどうかをテストします.需要を実現するにはwindowを使用しなければなりません.scrollYプロパティでは、現在のスクロールバーがスクロールしたページの高さ(px)を取得し、setInterval()の方法で時間間隔のように上部に戻る動作にアニメーション効果を加えます.その間にscrollBy()を呼び出し続け、ページの上部に徐々に近づきます.
window.scrollYは、ドキュメントが垂直方向にスクロールされたピクセル値を返します.setInterval()は、関数を繰り返し呼び出すか、コードセグメントを実行して、各呼び出しの間に一定の時間遅延させる.IntervalIDを返します.**clearInterval()**setIntervalで設定したtimeoutをキャンセルします.パラメータはsetInterval()が返すID値でなければなりません.window.scrollBy()スクロールするピクセル数を指定します
効果のプレビューhttps://tazbingor.github.io/small-front-end-project/test01-back-to-top/test.html
トップに戻る効果を実現
具体的な実装
まずレイアウトし、buttonを作成し、Idを'backToTop'とします.同時にこのボタンのCSSを設定して、常にページの右下に表示させます
#backToTop{
position: fixed;
bottom: 100px;
right: 20px;
}
ボタンコンポーネントはgetElementById()で取得し、onclickイベントを設定し、buttonリファレンスが成功したかどうかをテストします.需要を実現するにはwindowを使用しなければなりません.scrollYプロパティでは、現在のスクロールバーがスクロールしたページの高さ(px)を取得し、setInterval()の方法で時間間隔のように上部に戻る動作にアニメーション効果を加えます.その間にscrollBy()を呼び出し続け、ページの上部に徐々に近づきます.
var button = document.getElementById('backToTop');
button.onclick = function () {
let height = window.scrollY;
let n = 1;
let id = setInterval(function () {
//console.log(n);
if (n === 20) {
clearInterval(id);
}
window.scrollBy(0, - height * n / 20);
n += 1;
}, 50);
}
関連する属性
window.scrollYは、ドキュメントが垂直方向にスクロールされたピクセル値を返します.setInterval()は、関数を繰り返し呼び出すか、コードセグメントを実行して、各呼び出しの間に一定の時間遅延させる.IntervalIDを返します.**clearInterval()**setIntervalで設定したtimeoutをキャンセルします.パラメータはsetInterval()が返すID値でなければなりません.window.scrollBy()スクロールするピクセル数を指定します
効果のプレビューhttps://tazbingor.github.io/small-front-end-project/test01-back-to-top/test.html