-1

これが私のJSコードです..

 <script>
var sticky = document.querySelector('.sticky');
var origOffsetY = sticky.offsetTop;

function onScroll(e) {
window.scrollY >= origOffsetY ? sticky.classList.add('fixed') :
                              sticky.classList.remove('fixed');
}

document.addEventListener('scroll', onScroll);

</script> 

ユーザーが下にスクロールしても div がその場所に留まるようにするために使用されます。

IE10 では動作しません (これにはquerySelectorclassList、およびaddEventListenerがあるため、そうではありません)。

4

1 に答える 1

2

IE10 はサポートしていませんscrollY。で使用する必要がありscrollTopますdocument.documentElement

var sticky = document.querySelector('.sticky');
var origOffsetY = sticky.offsetTop;
var hasScrollY = 'scrollY' in window;

function onScroll(e) {
  var y = hasScrollY ? window.scrollY : document.documentElement.scrollTop;
  y >= origOffsetY ? sticky.classList.add('fixed') : sticky.classList.remove('fixed');
}

document.addEventListener('scroll', onScroll);

実例| ライブソース

(チェックは必要ないかもしれません。すべてのターゲット ブラウザがサポートdocument.documentElement.scrollTopされている可能性があり、常にそれを使用できます。)

于 2013-10-04T07:07:51.783 に答える