私は非常に単純なWebページ(HTMLのみ)を設計しています。実装したい唯一の「機能」は、ユーザーがページをスクロールするときに何かをすることです。何らかの形でその「イベント」をキャプチャする方法はありますか?「スクロールダウン」イベントをキャプチャしますか?
答えて
は、別のJSのフレームワーク(MooToolsは)
window.addEvent('scroll',function(e) {
//do stuff
});
HTMLだけではできません.Javascriptを使用する必要があります。あなたがしたいかjQuery使用することはできませんしていない場合、あなたはアンソニーによって投稿onscroll
ソリューションを使用することができます
$(document).ready(function() {
$(window).scroll(function() {
// do whatever you need here.
});
});
:あなたのソリューションは次のように見ることができるので、私は、jQueryを使用することをお勧めします。あなたは(あなたが非常に簡単なHTMLページのために何しない場合があります)のjQueryを使用したくない場合は、あなたが定期的にJavascriptを使用してこれを実現することができます
私が推測するのは、上にスクロールせずにスクロールするだけです。スクロールダウンのためだけに何かがあります。 –
:
<script>
function scrollFunction() {
// do your stuff here;
}
window.onscroll = scrollFunction;
</script>
あなたが何かをしたいと述べましたスクロールしたときにが表示されます。ページ - onscrollイベントは、x軸またはy軸のいずれかの方向にスクロールして消えるため、スクロールするたびに関数が呼び出されます。
ページをスクロールしたときにコードを実行するだけの場合は、以前のスクロール位置を維持して、onscrollが呼び出されるたびに比較する必要があります。ただ、完全性について
おそらく 'onscroll'の代わりに' attachEvent'(IE)と 'addEventListener'(それ以外はすべて)を使うべきでしょう。 – crush
@crush、なぜonscrollの代わりにattachEventとaddEventListenerを使用するのですか? – Pacerier
@Pacerierさて、私は誤解を招き、インターネット上で入手して伝播している間違った情報に基づいてこのコメントを再訪させてください。 [W3C HTML5仕様](http://www.w3.org/TR/html5/webappapis.html#event-handlers-on-elements,-document-objects,and-window-objects)によると、 'onscroll'を使っても何も問題ありません。 'onscroll'は特に[HTML4仕様](http://www.w3.org/TR/html4/interact/scripts.html#h-18.2.3)にはなかったことに注意することが重要です。 – crush
より良い方法は、スクロールイベントのためだけでなく、以下のようにスクロール方向をチェックするだけではありませんを使用して別の解決策があります。
$(window).bind('mousewheel', function(event) {
if (event.originalEvent.wheelDelta >= 0) {
console.log('Scroll up');
}
else {
console.log('Scroll down');
}
});
これは正解でなければなりません。 –
マウスホイールを使ってスクロールしたり、タッチデバイスを使用していない場合はどうなりますか? – HyderA
@hyde異なるデバイスが異なる反応を示します。このためには、hammerjsなどのプラグインを使用する必要があります。そうでなければ、私はこれがここで答えられたと思うhttp://stackoverflow.com/questions/2863547/javascript-scroll-event-for-iphone-ipad –
これは私に役立ちます。
var previousPosition
$(window).scroll(function(){
var currentScrollPosition=$(window).scrollTop() + $(window).height()
if (currentScrollPosition>previousScrollPosition) {
console.log('down')
}else if(currentScrollPosition<previousScrollPosition){
console.log('up')
}
previousScrollPosition=currentScrollPosition
});
- 1. スクロールアップまたはスクロールダウンのJavaScriptイベント
- 2. イベントをスクロールダウンするためのAngularJSディレクティブ?
- 3. イベントをキャプチャする
- 4. Intent.ACTION_MEDIA_BUTTONイベントをキャプチャ
- 5. イベントがスクロールダウンで発生する
- 6. Windowsでノートパソコンの蓋を閉じるイベントをキャプチャしますか?
- 7. Javascript:マウスホイールのイベントをキャプチャし、ページをスクロールしませんか?
- 8. Windows LANプロキシ設定のイベントをキャプチャしていますか?
- 9. WPF - 上部にないコントロールからイベントをキャプチャします。
- 10. 他のWindowsアプリケーションからイベントをキャプチャします
- 11. JavaScript&Google Maps v3:tilesloaded()イベントの結果をキャプチャしますか?
- 12. キャプチャFlash/FlexのDisplayObjectイベントを再描画しますか?
- 13. 「新しいウィンドウオープン」イベントのキャプチャ
- 14. ListViewからCheckboxイベントをキャプチャする
- 15. スクロールダウン後にナビゲーションがフェードインしますか?
- 16. Nativescript WebViewキャプチャonclickイベント
- 17. onChangeイベントをキャプチャできません
- 18. AX7/D365:ユーザーインターフェイスをナビゲートするユーザーのイベントをキャプチャします
- 19. nativescriptでSMSイベントをキャプチャ
- 20. QML - 子オブジェクトのすべてのUIイベントをキャプチャします
- 21. bootbpxの確認/警告ボックスボタンでclickイベントをキャプチャします
- 22. UpdatePanel内のUserControlのLinkbuttonイベントをキャプチャします
- 23. アクティブアプリケーションのない指紋リーダーのイベントをキャプチャします
- 24. Objective Cのイベント(ビュー上)をプログラムでキャプチャします
- 25. Enamlのイベントでウィンドウのフォーカスをキャプチャします
- 26. スクロールダウン矢印キーのときKeyboardEventのKeyDownイベントを動作しません
- 27. rabbitmqを使用してブラウザからキャプチャするイベント
- 28. ScrollViewがスクロールダウンしません
- 29. アプリケーション終了イベントのキャプチャ - WinForms
- 30. キャプチャ.Netスレッド終了イベント
なぜでしょうか? 'window.addEventListener(" scroll "、function(e){...});'?余分な8文字のために? –
そのように(mootools 'way)あなたはIE <9(attachEventもの)もサポートしています。 – stecb
これは 'window'の' prototype'を変更していますか? –