2012-12-05 102 views
0

你好我正在創建一個應用程序與一些繁重的Javascript功能我有如何設計它的問題。jquery插件體系結構

我有一個Jquery插件A,它與插件B進行通信。插件B中有函數,當插件A中發生事件時可以調用這個函數。這是一個基本設置。

,但如果用戶希望他們可以用它代替插件B和插件B的覆蓋缺省行爲的插件C,但在插件不能改變函數名或任何一個在默認情況下調用插件B.

有任何我可以輕鬆實現的方式?我應該遵循什麼架構。 我想在插件B初始化時引發一個事件,然後可以通過插件C中的函數覆蓋它。

任何幫助將不勝感激。

編輯

考慮下面的例子。

我已經訂閱了事件

A.subscribe(Event, function(topic, data) { 
      $.defaultfunction(Event, data, Value); 
      }); 

默認情況下它調用的函數,而在插件B.和插件B有defaultfunction。

現在我需要一種方法來覆蓋默認行爲是在defaultfunction的插件,B帶在另一個插件C.

我希望我的問題是清楚的另一個功能。

+1

你應該更具體。歡迎一些代碼示例 –

+0

我已經添加了一些代碼。讓我知道如果其清除 – Kishore

回答

3

而不是有插件一個調用插件B,讓插件A觸發插件B和C正在偵聽的事件。這允許插件A將其事件廣播給使用B或C的任何一個。

+0

的問題是插件B將永遠聽取插件A事件。插件A和插件B就像不能修改的默認插件。我想創建另一個插件C,它是可選的,但是如果存在將覆蓋插件B的行爲 – Kishore

+0

如果您不能修改插件B,插件C如何覆蓋它?我不明白這是一個問題。 –

+0

我正在創建他們兩個,但是這將被部署,並且允許訪問不能修改插件A或B的外部用戶,我需要以這種方式構建插件B行爲可以被另一個自定義插件覆蓋 – Kishore