我正在对一个网站进行 ajax 化。我的菜单应该始终是粘性的(使用 Foundation 提供的粘性模块)。但它只在常规页面加载时粘滞,而不是在 ajax 重新加载时(也就是在网站上导航时)
我正在尝试在事件 ajaxComplete
发生时重新初始化模块,使用 Foundation 6 文档中提供的行:
$(document).ajaxComplete(function () {
Foundation.reInit($('.sticky'));
//other code
});
但它似乎不起作用,因为我在控制台中收到此错误:
TypeError: Cannot read property '_init' of undefined
at HTMLElement.<anonymous> (foundation.core.js:103)
at Function.each (jquery.min.js?ver=2.1.0:2)
at o.fn.init.each (jquery.min.js?ver=2.1.0:2)
at Object.reInit (foundation.core.js:102)
at HTMLDocument.<anonymous> (stickyfooter.js:28)
at HTMLDocument.dispatch (jquery.min.js?ver=2.1.0:3)
at HTMLDocument.r.handle (jquery.min.js?ver=2.1.0:3)
at Object.trigger (jquery.min.js?ver=2.1.0:3)
at x (jquery.min.js?ver=2.1.0:4)
at XMLHttpRequest.<anonymous> (jquery.min.js?ver=2.1.0:4)
我不明白。这是什么意思 ?如何在 ajax 重新加载后使模块工作? 正在运行的网站:http://lesdeuxvagues.com/demo
最佳答案
您没有发布您的标记,但我访问了该网站,但没有在您的 CSS 中看到“.sticky”类。你在打电话
Foundation.reInit()
在 jQuery 选择器上。也是一样
$('.sticky')
选择页面上的任何内容?你为什么不试试:
Foundation.reInit($('[data-sticky]'))
这将重新初始化所有具有属性 data-sticky 的元素
关于javascript - Zurb Foundation javascript reInit 模块不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44344697/