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

使用jQuery按钮触发SimpleLightBox打开失败,报错gallery.open不是函数

问题原因及解决方法

你直接把$('.gallery a').simpleLightbox()的返回值赋值给gallery变量,这个返回的是jQuery对象,而非SimpleLightBox的实例对象,所以调用gallery.open()会触发「不是函数」的报错。

正确初始化方式

要获取SimpleLightBox的实例,需在初始化后通过jQuery的.data()方法提取:

// 初始化并获取实例
var gallery = $('.gallery a').simpleLightbox().data('simpleLightbox');

修正后的触发代码

之后再调用open()方法即可正常触发画廊:

$(document).on('click', '.view-gallery', function (event) {
  // 不传参默认打开第一张,传入索引值可指定打开对应图片(索引从0开始)
  gallery.open(0);
});

额外注意事项

  • 若画廊元素是动态生成的,务必保证初始化代码在元素渲染完成后执行,否则无法正确获取实例。
  • open()方法支持传入索引参数,精准控制打开画廊中的某一张图片。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 15:20:52