运行默认的jQuery函数后,再运行Javascript函数

Run a Javascript function after a default jQuery function is run

本文关键字:函数 再运行 Javascript 运行 jQuery 默认      更新时间:2023-09-26

;当一个特定的函数运行后,我该如何执行它呢?例如;每次.text()运行时,我可以运行一个函数,而不管上下文是什么?

在这个特定的例子中,我想听.append(),原因是我需要重新注册事件侦听器时,新的元素被放置在屏幕上。(即BTN点击事件监听器)。

我怎样才能做到这一点?下面以refreshEvents()为例:

可能正确的方法是使用事件委托,如动态创建元素的事件绑定所述。如改变

$(".search-btn").on("click", function() {
    ...
});

:

$("#container").on("click", ".search-btn", function() {
    ...
});

#container替换为包含所有动态添加的搜索按钮的静态元素的选择器。

但是要演示如何完成你的要求,你可以这样做:

(function(oldappend) {
    $.fn.append = function() {
        var result = oldappend.apply(this, arguments);
        refreshEvents();
        return result;
    };
})($.fn.append);

将jQuery .append()方法的原始值保存在局部变量oldappend中,然后将其重新定义为一个函数,该函数调用原始函数,然后调用您的函数。