You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Fancybox中Next触发时执行自定义函数无效问题求助

解决Fancybox Next按钮触发自定义函数的问题

嘿,我来帮你搞定这个问题!你的代码里有两个关键问题导致它没法正常工作:

1. 语法错误

你写的return(console.log('Next called');有两处问题:

  • 括号不匹配:return(后面没有对应的)
  • 多余的return:console.log()本身返回undefined,而且你只是想执行自定义函数,不需要返回值(除非你要阻止默认的Next行为)

2. 事件绑定方式不对

在Fancybox的最新版本中,正确的事件监听方式是通过on配置对象来绑定,而不是直接把next作为顶级配置项。

修正后的代码

下面是可以正常工作的版本,你可以直接用:

Fancybox.bind("[data-fancybox]", {
  on: {
    next: function() {
      console.log('Next called');
      // 在这里添加你的自定义函数逻辑
    }
  }
});

如果喜欢更简洁的箭头函数写法,也可以这样:

Fancybox.bind("[data-fancybox]", {
  on: {
    next: () => console.log('Next called')
  }
});

额外说明

要是你需要阻止Fancybox默认的Next跳转行为(比如想完全自定义导航逻辑),只需要在函数里返回false就行:

Fancybox.bind("[data-fancybox]", {
  on: {
    next: function() {
      console.log('Next called');
      // 执行你的自定义导航逻辑
      return false; // 阻止默认的Next动作
    }
  }
});

内容的提问来源于stack exchange,提问作者Jari Rengeling

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.01 03:07:50