JQuery:如何在 AJAX 出现元素后追加元素?

我有一个通过 AJAX 加载的模式(我无权访问触发它的 JS 文件)。

我想使用 JQuery 将一些 HTML 附加到模态的主体。

如果我当然不能在 document.ready 函数中简单地做到这一点。

当另一个元素出现在 DOM 中时,有没有办法附加 HTML?

我试过了

    $('.npopup .description').load(function(){
        $(this).append(message);
    });

    $('.npopup .description').ready(function(){
        $(this).append(message);
    });

没有结果。


慕桂英4014372
浏览 115回答 1
1回答

撒科打诨

你可以ajaxComplete()这样使用:$( document ).ajaxComplete(function( event, xhr, settings ) {  if ( settings.url === "ajax/test.html" ) {    $(this).append(message);  }});确保查看event,xhr并settings让您找到您感兴趣的请求。否则,如果您不在if回调正文中使用该语句,您将在每个 ajax 调用中附加该消息。另一种可能的解决方案是使用 MutationObserver 监听 DOM 中的变化。请参阅此处的示例: https: //developer.mozilla.org/en-US/docs/Web/API/MutationObserver。MutationObserver 虽然是一个更好的解决方案,但我不记得与浏览器的兼容性如何。总的来说,兼容性还是不错的。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript