假设我有一个插件,例如:

(function (jQuery) {
    var somevars = 0;

    jQuery.fn.someFunc = function () {
      // do some work
    };

    jQuery.fn.myPlugin = function (options) {
      // do some initialization etc...
    }
})(jQuery);

jQuery(document).ready(function () {
    jQuery(".someclass").myPlugin();
});


现在,我们想用类似以下的方法将其完全删除:

jQuery(".someclass").destroy("myPlugin");


我怎样才能做到这一点?从对象,函数,数据,事件,所有内容中完全删除插件。

更新

假设不存在销毁自己的方法,并假设您使用的是其他人的插件,该插件在初始化时会自动绑定到页面上的几个元素,并假设在与用户互动后,您需要使用其所有绑定将其完全删除。

可能吗?还是唯一的解决方案是浏览插件的代码,然后发现如何删除它,并添加一些方法来删除它?

最佳答案

给定一个插件可以做多少事情,更改DOM,到处绑定事件,就无法删除它并使用一些神奇的命令进行清理。

09-20 23:34