【问题标题】:Check if DOM Element exists automatically before appending in JQuery在追加到 JQuery 之前检查 DOM 元素是否自动存在
【发布时间】:2011-10-23 16:09:04
【问题描述】:

基本上,我希望每次向 DOM 追加或添加我要放入的元素不存在时运行检查。我正在制作复杂的应用程序,有时会制作重复的元素,导致事件无法正确触发。

我不想每次更改 DOM 时都必须手动运行此检查,我希望在调用 prepend 或 append 函数时自动运行它。调用函数时是否有可以监听的事件?

我不会在应用程序发布时使用此检查,因为我意识到它可能会严重影响性能,但在开发过程中它会非常有价值。

【问题讨论】:

  • 是否希望此检查基于元素 ID,或者...?

标签: javascript jquery


【解决方案1】:

只需覆盖jQuery.fn.append

(function() {
    var append = jQuery.fn.append;
    jQuery.fn.append = function() {
        var elemExists = ...;
        if (!elemExists) {
            append.apply(this, arguments);
        }
    };
})();

jQuery.fn.prepend 执行相同的操作。这很好用,因为您必须对生产进行的唯一更改就是排除此功能。

【讨论】:

猜你喜欢
  • 2011-03-25
  • 1970-01-01
  • 1970-01-01
  • 2014-11-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-14
相关资源
最近更新 更多