如何在FancyBox上附加滚动事件

问题描述

我的fancybox弹出窗口很大并且包含滚动条,并且我需要任何事件来在此fancybox弹出窗口附加滚动条。

我已经尝试了一些活动,例如:

$('.fancybox-inner').off("scroll").on("scroll",function(){debugger;});

OR

$('#fancybox').off("scroll").on("scroll",function(){debugger;});

和其他方式,但无济于事。

有人有想法吗?

解决方法

Fancybox内容是动态生成的。因此,您需要为滚动事件使用委托的事件处理程序:

$(document).on('scroll','.fancybox-inner',function() { 
  debugger;
});

或者,您可以使用显示的FancyBox内置事件手动添加scroll事件:

$('#yourFancyBox').fancybox({
  afterShow: function() {
    $('.fancybox-inner').on('scroll',function() {
      debugger;
    });
  }
  // other settings...
});

您可以通过阅读documentation

了解有关Fancybox库中可用事件的更多信息。