1

我正在使用Mutation Summary 库来观察何时添加了特定类型的元素,然后将我的 html 元素附加到每个元素:

var observer = new MutationSummary({
      callback: theNextPageLoaded,
      queries: [{
           element: "li.sweet"
      }]
});

function theNextPageLoaded(summaries) {
    var sc = summaries[0],
    sc_length = sc.added.length,
    btn = $('<button>', {
          class: 'my_btn',
          text: 'Please work!'
        });

    sc.added.forEach(function(newEl) {
      newEl.appendChild(btn);
      console.log(typeof(newEl));  //newEl's type is 'object'
    });
}

上面的代码不起作用。我不确定我什至可以appendChild在物体上使用。任何帮助,将不胜感激!

4

1 回答 1

2

您的问题是将突变摘要响应和 jQuery 元素中的“裸”DOM 元素混合在一起。纯 DOMappendChild不理解您的 jQuery-wrapped btn

因此,您需要使它们都为同一类型:

$(newEl).append(btn); // jQuery
newEl.appendChild(btn.get(0)); // pure DOM

两者都可以,但第一个可能更惯用。

于 2014-06-24T10:18:43.107 回答