onscrollイベント
インスタンス
例1
div要素をスクロール中にJavaScriptを実行します:
<div onscroll="myFunction()">
例2
異なるスクロール位置のクラス名間で切り替え - ユーザーがページのトップから50ピクセル下にスクロールすると、クラス名「test」が要素に追加されます(もう一度上にスクロールすると削除されます)。
window.onscroll = function() {myFunction()}; function myFunction() { if (document.body.scrollTop > 50 || document.documentElement.scrollTop > 50) { document.getElementById("myP").className = "test"; } else { document.getElementById("myP").className = ""; } }
例3
ユーザーがページのトップから350ピクセル下にスクロールした場合に要素にslideUpクラスを追加してスライドインします:
window.onscroll = function() {myFunction()}; function myFunction() { if (document.body.scrollTop > 350 || document.documentElement.scrollTop > 350) { document.getElementById("myImg").className = "slideUp"; } }
構文
HTMLで:
<element onscroll="myScript">
JavaScriptで:
object.onscroll = function(){myScript};
JavaScriptでaddEventListener()メソッドを使用する:
object.addEventListener("scroll", myScript);
注釈:Internet Explorer 8 またはそれ以前のバージョンではサポートされていません addEventListener() メソッド。
技術的詳細
バブル: | サポートされていません |
---|---|
キャンセル可能: | サポートされていません |
イベントタイプ: | ユーザーインターフェースから生成された場合UiEvent。そうでない場合 Event。 |
サポートされる HTML タグ: | <address>, <blockquote>, <body>, <caption>, <center>, <dd>, <dir>, <div>, <dl>, <dt>, <fieldset>, <form>, <h1> から <h6>, <html>, <li>, <menu>, <object>, <ol>, <p>, <pre>, <select>, <tbody>, <textarea>, <tfoot>, <thead>, <ul> |
DOM バージョン: | レベル2 イベント |
ブラウザのサポート
イベント | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
onscroll | サポート | サポート | サポート | サポート | サポート |