Javascript Can';t在动态加载的元素上应用jquery函数

Javascript Can';t在动态加载的元素上应用jquery函数,javascript,jquery,html,emojione,Javascript,Jquery,Html,Emojione,我正在使用名为emoji的库,我正在使用下面一个示例中的代码将文本转换为emojis,当我加载页面时,它可以正常工作,但是当新元素动态出现时,它在刷新页面之前不会对它们起作用。如何让它在动态加载的情况下工作 $(document).ready(function() { $(".convert-emoji").each(function() { var original = $(this).html(); var converted = emojione.t

我正在使用名为emoji的库,我正在使用下面一个示例中的代码将文本转换为emojis,当我加载页面时,它可以正常工作,但是当新元素动态出现时,它在刷新页面之前不会对它们起作用。如何让它在动态加载的情况下工作

$(document).ready(function() {
    $(".convert-emoji").each(function() {
        var original = $(this).html();
        var converted = emojione.toImage(original);
        $(this).html(converted);
    });
});

下面是示例的链接:

将此代码提取到函数中,并在需要时调用此函数。。。或者设置一个间隔

function refreshEmojis() {
    $(".convert-emoji").each(function() {
        var original = $(this).html();
        var converted = emojione.toImage(original);
        $(this).html(converted);
    });
}

$(document).ready(refreshEmojis); //on page load

$("#someButtonId").on("click", function() { //click of some button
    //some action...
    refreshEmojis();
});

setInterval(refreshEmojis, 100); //each 100 milliseconds

将此代码提取到函数中,并在需要时调用此函数。。。或者设置一个间隔

function refreshEmojis() {
    $(".convert-emoji").each(function() {
        var original = $(this).html();
        var converted = emojione.toImage(original);
        $(this).html(converted);
    });
}

$(document).ready(refreshEmojis); //on page load

$("#someButtonId").on("click", function() { //click of some button
    //some action...
    refreshEmojis();
});

setInterval(refreshEmojis, 100); //each 100 milliseconds

谢谢你的回答!!当我发布第一条消息时,它有点起作用了:“它一直是这样,但当我发布第二条消息时”:“第一条消息更改为表情符号,但第二条仍然是纯文本。你知道如何让它也在新消息上工作吗?你必须有一个异步ajax调用,并且你将代码放在调用之后。。。您必须将refreshEmojis()调用放入ajax回调中。。。把你的邮件代码放在问题中,让我看看谢谢你的回答!!当我发布第一条消息时,它有点起作用了:“它一直是这样,但当我发布第二条消息时”:“第一条消息更改为表情符号,但第二条仍然是纯文本。你知道如何让它也在新消息上工作吗?你必须有一个异步ajax调用,并且你将代码放在调用之后。。。您必须将refreshEmojis()调用放入ajax回调中。。。把你的邮件代码放在问题里,让我看看