angular4,angular6中解決內層盒子到底外層盒子滾動

 //用來處理 裏盒子滾完外盒子滾的問題
    scrollUnique(who){
        document.getElementsByClassName(who)[0].addEventListener('mousewheel',function($event:any){
            var scrollTop = this.scrollTop,
            scrollHeight = this.scrollHeight,
            height = this.clientHeight;
            var delta = ($event.wheelDelta) ? $event.wheelDelta : -($event.detail || 0);        
            if ((delta > 0 && scrollTop <= delta) || (delta < 0 && scrollHeight - height - scrollTop <= -1 * delta)) {
                // IE瀏覽器下滾動會跨越邊界直接影響父級滾動,所以,臨界時候手動邊界滾動定位
                this.scrollTop = delta > 0? 0: scrollHeight;
                // 向上滾 || 向下滾
                event.preventDefault();
            }
        })
    }

  沒有作兼容和通用,本身改改便可用javascript

相關文章
相關標籤/搜索