开发者

Check if DOM Element exists automatically before appending in JQuery

Basically, I want a check to run every time I append or prepend to the DOM that the element I am putting in does not exist. I am making sophisticated applications and on occasion have made duplicate elements causing events to not trigger properly.

I don't wa开发者_高级运维nt to have to run this check manually each time I change the DOM, I would like it to be ran automatically when the prepend, or append functions are called. Is there an event I could listen for when a function is called?

I wouldn't use this check when the application is released because I realize that it could severely hamper performance, but during development it would be very valuable.


Just override jQuery.fn.append:

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

Do the same for jQuery.fn.prepend. This works nicely because the only change you have to make for production is to exclude this function.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜