浏览器中的观察者模式javascript:订阅事件"添加了Dom元素“;并处理这个元素

Observer pattern in browser-javascript: subscribe to event "Dom element added" and handle this element

本文关键字:元素 Dom 添加 处理 quot javascript 观察者模式 事件 浏览器      更新时间:2023-09-26

我有一个查询:

$(function() {
    $('form').each(function() {
      // do smthing with form
    });
});

表单可以动态显示,即通过javascript构建。我需要在加载后立即处理它们,smth类似:

$('form').onload(function() {
   // it's called after new form was added to dom
});

我曾想过使用setInterval,但也许HTML5或新的ES标准带来了新的。。。

有人帮助编写具有上述特性的加载回调吗?

附言:为了澄清目的:我需要将事件处理程序附加到事件"element was added To dom"。

事实上,有一个现在不推荐使用的事件名为"DOMNodeInserted",明智的做法是使用委托事件。使用委托事件,您可以处理动态添加到DOM的新元素上的事件。

将其封装在函数中

$(function() {
    function modForm() {
    $('form').each(function() {
      // do smthing with form
    });
    }
   modForm();
  $('a').click(function(){
    //add form dynamically
    $('body').append('<form>');
    //call the function agan
     modForm();
  });
});