当我使用scrollWheel时,我会将currentSlide放大一倍,当currentSlide === 2时,红色div上升,我想启用滚动到正文的功能。如您所见,我的绑定函数正在返回false。我尝试在return truecurrentSlide === 2上设置条件,但显然不起作用。

有人可以向我解释如何解决该问题吗?

var currentSlide = 0;

function scrollDown() {
    console.log('Scroll Down', currentSlide);

  if(currentSlide < 3) {
    currentSlide += 1;
  }

  if(currentSlide === 3) {
    $('#el').addClass('hide');
  }
}


http://jsbin.com/rovicawija/1/edit?js,console,output

最佳答案

我完全不确定您要做什么,因为您的问题和预期结果尚不清楚

我做了如下代码

var currentSlide = 0;

    function scrollDown() {
        console.log('Scroll Down', currentSlide);

      if(currentSlide < 10) {
        currentSlide += 1;
        return false;
      }

      if(currentSlide === 10) {
        $('#el').addClass('hide');
      }
    }


    $(window).on('DOMMouseScroll', function(e) {
            if (e.originalEvent.detail > 0) {
                return scrollDown();
            }


        })
        .on('mousewheel', function(e) {

            if (e.originalEvent.wheelDelta < 0) {
                return scrollDown();
            }

        });


通过使用on(您应该使用)并让scrollDown返回一个布尔值false(如果不好的话),如果什么也没做,则不返回任何值。

关于javascript - 在功能内启用滚动,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30758771/

10-10 00:47