我有一个音乐网站,我需要使用这个插件水平滚动播放列表。当我在静态页面上使用它时,它可以很好地工作,但当我在div中使用它时(其中内容是通过Ajax加载的),它就不起作用了(用户将音乐添加到播放列表中,它就会出现在这个div中)。代码
$(document).ready(function () {
$('body #playlist').horizontalScroll();
});
当内容也通过ajax加载时,在这个js代码中添加什么可以使其工作?
如果在AJAX调用完成后替换#playlist
元素,则需要在success回调函数中的新#playlist
元素上重新初始化插件,如下所示:
$.ajax({
// some AJAX options
}).done(function(data) {
// do something with data (your response)
$('#playlist').horizontalScroll();
});
如果您有多个AJAX请求,可能需要重新初始化插件,您可能需要考虑ajaxSuccess
事件:
$(document).ajaxSuccess(function() {
$('#playlist').horizontalScroll();
});
尝试调用:
$('body #playlist').horizontalScroll();
ajax调用完成后。或者检查该组件中是否有一些更新方法。