你好,我正在创建一个应用程序,它有一些沉重的Javascript功能,我有关于如何设计它的问题。
我有一个Jquery插件A,它与插件B通信。插件B中有一些函数可以在插件A中发生事件时调用。这是一个基本的设置。
但如果用户需要,他们可以使用插件C代替插件B,并覆盖插件B的默认行为,但不能更改插件A中的函数名或任何默认调用插件B的内容。
我有什么办法可以轻易做到这一点吗?我应该遵循什么样的建筑。我希望在插件B初始化时引发一个事件,然后我可以用插件C中的函数覆盖它。
任何帮助都将不胜感激。
编辑
考虑下面的例子。
我已经订阅了一项活动
A.subscribe(Event, function(topic, data) {
$.defaultfunction(Event, data, Value);
});
默认情况下,它调用插件B中的函数,插件B具有默认函数。
现在,我需要一种方法来覆盖默认行为,即插件B中的默认功能,而另一个插件C中的另一个函数。
我希望我的问题很清楚。
发布于 2012-12-05 12:35:26
与其让插件A调用插件B,不如让插件A触发插件B和C都在监听的事件。这允许插件A将它的事件广播到使用的B或C的任何一个。
https://stackoverflow.com/questions/13731402
复制相似问题