我从堆栈溢出中获得了很多帮助,将这个页面带到了它的功能所在的位置,它几乎就在那里,我只是不是一个jQuery专家。工作示例:
http://www.metropoliscreative.com/jake_test/test1.html
我正在使用Galleriffic(动态图库jQuery插件)和Quicksand(jQuery过滤插件)。
如果单击缩略图,它们将在大窗格中正确加载。如果选择项目类型或行业,它将根据某些数据类型对这些缩略图进行排序。
然而,问题是,一旦你对它们进行排序,Galleriffic功能就会停止工作。所以为了纠正这个问题,我在流沙初始化中包含了另一个galleriffic调用。因此,一旦流沙完成,它将重置galleriffic。
但是,此时我从galleriffic收到错误,我不知道为什么。我调用的方式与页面加载时调用的方式完全相同,然后就可以了。
答案 0 :(得分:2)
当我查看您的页面来源时,我在第295行(就在问题区域之前)看到了一个不应该存在的“d”。也许这就是原因,你的代码没有被执行。
答案 1 :(得分:0)
由于您的第二次.galleriffic()
来电,似乎是在抛出错误。我得到的错误是Cannot convert 'imageData' to object
。这似乎是因为当您切换到(例如)项目类型 - >手册包gallerific
尝试根据数据属性将当前图像ID设置为0。但是,似乎quicksand
搞砸了数据数组,导致gallerific
在第二次调用时看不到任何元素(也就是图像)。我认为quicksand
导致问题,可能是因为它没有正确删除/添加图像。如果您查看this示例,删除图像的代码如下:
$('#removeImageByIndexLink').click(function(e) {
if (!gallery.removeImageByIndex(5))
alert('There is no longer an image at position 5 to remove!');
e.preventDefault();
});
然而,似乎quicksand
仅使用.remove()
来摆脱图像。现在,我查看了removeImageByIndex()
的代码,似乎gallerific
保留了有关其使用的图像的信息缓存,当.remove()
被quicksand
调用时,这些信息不会更新}。
tldr; Quicksand错误地删除了图像,并且没有更新更新。
如何解决?好吧,一个选择是尝试重写你的流沙脚本的删除和添加部分,以了解画廊。另一种方法是将流沙的删除部分重写为仅HIDE元素而不是删除它们(即设置display:none;
而不是.remove()
)。
我希望这会有所帮助,这就是我能想到的一切。