【问题标题】:Scrolling DIV on static body scroll在静态正文滚动上滚动 DIV
【发布时间】:2017-06-07 21:01:45
【问题描述】:

我有一个静态的 body 元素和一个 DIV,它的高度是 500px。它有溢出:可见且文本长度超过 500 像素。我想在将鼠标指针悬停在 body 上时滚动该 DIV(它本身没有任何滚动条)。

有什么路线吗?

Pic related - 鼠标指针在我要滚动的 DIV 之外

【问题讨论】:

  • 到目前为止你尝试了什么?
  • 将DIV设置为位置:固定,其顶部、底部、左侧和右侧为0,但它会调整其中元素的大小
  • 所以基本上你想在鼠标指针不在里面时滚动它?
  • 是的,这就是我想要做的
  • 我讨厌这里的人通过否决和删除他们的问题而不是纠正和帮助他们来欺负新人:/

标签: javascript html css


【解决方案1】:

你可以试试

$(document).ready(function(){
   if ($('selector:hover').length != 0) {
    $(document).scrollTo('selector');
 }
});

【讨论】:

    【解决方案2】:

    好的,我找到了。对于找到此线程的任何人:

    /** This is high-level function.
    * It must react to delta being more/less than zero.
    */
    function handle(delta) {
    var target = $('#scrollable_content');
    var top = target.scrollTop() - delta;
    target.scrollTop(top);
    }
    
    /** Event handler for mouse wheel event.
    */
    function wheel(event){
    var delta = 0;
    if (!event) /* For IE. */
            event = window.event;
    if (event.wheelDelta) { /* IE/Opera. */
            delta = event.wheelDelta/120;
    } else if (event.detail) { /** Mozilla case. */
            /** In Mozilla, sign of delta is different than in IE.
             * Also, delta is multiple of 3.
             */
            delta = -event.detail/3;
    }
    
    /** If delta is nonzero, handle it.
     * Basically, delta is now positive if wheel was scrolled up,
     * and negative, if wheel was scrolled down.
     */
    if (delta) handle(delta);
    
    /** Prevent default actions caused by mouse wheel.
     * That might be ugly, but we handle scrolls somehow
     * anyway, so don't bother here..
     */
    if (event.preventDefault) event.preventDefault();
    event.returnValue = false;
    }
    
    
    if (window.addEventListener) window.addEventListener('DOMMouseScroll', 
    wheel, false);
    window.onmousewheel = document.onmousewheel = wheel;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-08
      • 1970-01-01
      相关资源
      最近更新 更多