我有div.scrollContainer
我插入了一堆项目。当页面加载时,我运行mCustomScrollbar jQuery插件,该插件将获取div.scrollContainer
内的项目并围绕它包装自己的类/ css / js以创建自定义滚动条。
当页面加载时,我会浏览我自己的库,它会输出更多项目供我注入滚动条。我目前正在将它们定位/附加到mCustomScrollbar创建的自定义类。但问题是,有时我的库在mCustomScrollbar创建其类之前输出项目。因此,库中的项永远不能放在正确的元素中,因为它不存在。
我考虑过将库中的项目附加到div.scrollContainer
,但是如果mCustomScrollbar在附加项目之前创建了它的类,我会遇到这样的问题。
总而言之,我想知道是否有办法检测DOM中何时创建新元素。我调查了另一个thread,建议使用livequery插件。我想知道是否有一个不需要额外插件的解决方案。
答案 0 :(得分:1)
您可以在插入最后一项后调用.mCustomScrollbar()
,这样您就可以确定这些项目是真的插入了:
$(".your-container").append($(".your-items"));
$("div.scrollContainer").mCustomScrollbar();
答案 1 :(得分:0)
使用updateOnContentResize:true设置,它将每隔几毫秒检查一次新内容。 启动插件时,还要在其他设置中添加以下内容: $(选择).mCustomScrollbar({ 高级:{ updateOnContentResize:true } });
然而!我个人反对无用的DOM每隔几毫秒遍历一次,我建议你使用它的原生更新方法。 找到一种方法来了解何时向滚动条标记添加更多内容,并在需要时运行此内容: $(选择器).mCustomScrollbar( “更新”);
P.S。阅读其文档,许多有用的设置/方法。
希望这会有所帮助:)