使用默认 mixitup配置$('#id').mixitup()
,我通过为按钮 <li>
添加 html 代码来动态添加过滤器按钮标签。并在将 html 代码添加到页面后立即再次调用相同的函数,以使新按钮起作用。单击页面上的一些过滤器按钮后(即使我不按新按钮)动画效果中断,在浏览器控制台上我看到:
未捕获的类型错误:无法读取未定义错误的“左侧”属性。
错误出现在第937行:
$toshow.each(function () {
var data = this.data;
data.tX = data.finalPos.left - data.showInterPos.left; //HERE
我在文档中看到如何使用 jquery after 方法将新图像添加到列表中,但是没有关于如何动态添加过滤器按钮并动态初始化它们的解释。
所描述的行为是否符合预期? 这意味着我做错了什么。那么,如何正确初始化新的过滤器按钮呢?
我正在使用 Mixitup 1.5.6(最新)和 jQuery 1.10.2(也尝试使用 jQuery 2.0.3)。
提前致谢!
最佳答案
您的问题是 data.finalPos 或 data.showInterPos 未定义。 console.log 定义后的数据,看看你是否有这些键
$toshow.each(function () {
var data = this.data;
console.log(data); //here
data.tX = data.finalPos.left - data.showInterPos.left;
关于javascript - Mixitup - 未捕获的类型错误 : Cannot read property 'left' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21070488/