私は非常に単純なWebページ(HTMLのみ)を設計していますが、実装したい「機能」は、ユーザーがページを下にスクロールしたときに何かをすることです。
完全を期すために、別のJSフレームワーク(Mootools)を使用する別のソリューションがあります
window.addEvent('scroll',function(e) {
//do stuff
});
JQueryを使用したくない場合(非常に単純なHTMLページでは使用しない場合があります)、通常のJavascriptを使用してこれを実現できます。
<script>
function scrollFunction() {
// do your stuff here;
}
window.onscroll = scrollFunction;
</script>
downページ-スクロールするときに何かをしたいということを述べました-onscrollイベントは、x軸またはy軸のいずれかの方向にスクロールを開始するので、関数はいつでも呼び出されます彼らはスクロールします。
ページを下にスクロールしたときにのみコードを実行したい場合は、onscrollが呼び出されるたびに比較するために、前のスクロール位置を保持する必要があります。
より良い方法は、スクロールイベントだけでなく、以下のような方向スクロールもチェックすることです。
$(window).bind('mousewheel', function(event) {
if (event.originalEvent.wheelDelta >= 0) {
console.log('Scroll up');
}
else {
console.log('Scroll down');
}
});
単純にこれを使用できます
window.addEvent('scroll',function(e) {
if (document.body.scrollTop > 50 || document.documentElement.scrollTop > 50) {
// enter code here
}
});
これは私のために動作します。
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
});