Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检查何时创建新元素_Javascript_Html_Css - Fatal编程技术网

Javascript 检查何时创建新元素

Javascript 检查何时创建新元素,javascript,html,css,Javascript,Html,Css,我有一个div.scrollContainer,在那里我插入了一堆项目。当页面加载时,我运行mCustomScrollbar jQuery插件,它将获取div.scrollContainer中的项目,并在其周围包装自己的类/css/js以创建自定义滚动条 当页面加载时,我会浏览我自己的库,它会输出更多的项目供我插入滚动条。我目前正在将它们定位/附加到mCustomScrollbar创建的自定义类中。然而,问题是,有时我的库在mCustomScrollbar创建其类之前输出这些项。因此,库中的项目

我有一个
div.scrollContainer
,在那里我插入了一堆项目。当页面加载时,我运行mCustomScrollbar jQuery插件,它将获取
div.scrollContainer
中的项目,并在其周围包装自己的类/css/js以创建自定义滚动条

当页面加载时,我会浏览我自己的库,它会输出更多的项目供我插入滚动条。我目前正在将它们定位/附加到mCustomScrollbar创建的自定义类中。然而,问题是,有时我的库在mCustomScrollbar创建其类之前输出这些项。因此,库中的项目永远无法放置在正确的元素中,因为它不存在

我曾考虑过将库中的项附加到
div.scrollContainer
,但随后我遇到了一个问题,即如果mCustomScrollbar在附加项之前创建了它的类,该怎么办


总之,我想知道是否有一种方法可以检测何时在DOM中创建新元素。我研究了另一个建议使用livequery插件的地方。我想知道是否有一种解决方案不需要额外的插件。

插入最后一个项目后,您可以调用
.mCustomScrollbar()
,因此您肯定这些项目确实插入了:

$(".your-container").append($(".your-items"));
$("div.scrollContainer").mCustomScrollbar();

使用updateOnContentResize:true设置,它将每隔几毫秒检查一次新内容。 启动插件时,还要在其他设置中添加以下内容: $(选择器).mCustomScrollbar({ 高级:{ updateOnContentResize:true } });

然而!就我个人而言,我反对每隔几毫秒进行一次无用的DOM遍历,我建议您使用其本机更新方法。 找到一种方法来了解何时向滚动条标记添加更多内容,并在需要时运行此操作: $(选择器).mCustomScrollbar(“更新”)

另外,请阅读它的文档,相当多有用的设置/方法


希望这对您有所帮助:)

在调用
mCustomScrollbar
之前,您可以插入后面的项目吗?或者您需要那些mCustomScrollbar的类来附加它们?如果可以先插入它们,可以尝试调用
$(“div.scrollContainer”).mCustomScrollbar()操作(例如,使用
.append
回调)。@scumah有效。你能把它作为一个答案贴出来让我接受吗?当然@ICU222。好了,我很高兴它有帮助。顺便说一句,我在之前的评论中提到了它,但是没有.append回调:/事实上,没有必要这样做。对不起:)