我無法理解在嘗試製作我的第一個大型JavaScript Web應用程序時在概念上應該怎麼做。處理僅適用於特定內容的JavaScript事件
根據用戶選擇的標籤,我在容器內顯示不同的內容。內容不僅僅是文本,而且使用不同的JavaScript函數和事件。我正在使用Yahoo! UI庫的「TabView」實現,但應該處理此問題的方式可能適用於其他Tab方法。
我想在做什麼基本上是以下幾點:
爲每個標籤(例如MYAPP.modules.tabCalendar和MYAPP.modules.tabJournal)創建單獨的模塊。當用戶點擊不同的標籤頁(或者瀏覽器按鈕導航到之前的標籤頁狀態)時,我可以調用MYAPP.modules [oldModule] .disable()和MYAPP.modules [newModules] .enable()。這些函數將訂閱或取消訂閱其自定義事件(例如,附加到容器的常規點擊處理程序)。
處理事件的替代方法可能是使用單個全局點擊處理程序。如果點擊位於容器內部,則確定當前選擇哪個選項卡並將單擊事件發送到MYAPP.modules [currentTab] .onClick()。
或者,全球的click處理程序可能觸發一個自定義事件的模塊已經因爲頁面加載訂閱的,並且每個模塊的onClick事件將運行並確定他們是否應該做任何事情。
似乎有很多選擇,但我一直在尋找資源,談論最好的方式來做這樣的事情。我在正確的道路上嗎?我該如何處理?
您使用的是現有的「TabStrip控件」組件,或者這是爲自己的發明? – 2009-03-03 21:42:47