我希望我會清楚,但我的情況和我想做的有點複雜。javascript(jQuery)未知事件管理
我將開始與this jsfiddle
正如你可以看到,有3個嵌套塊解釋我的問題。 JavaScript代碼分爲兩部分:第一部分是我無法改變的東西(當然,其實我不想碰它:x)。這個腳本在所有的塊上創建事件,並用「return false」來停止傳播(我對「e.stopPropagation」有同樣的問題)。 javascript的其他部分是我寫的腳本。按下回車鍵後,我想要改變點擊的行爲:當我點擊#b(或#c至少在#b)時,我想顯示「gruik」,只顯示「gruik」。要做到這一點,我殺了其他「點擊」事件(來自我無法改變的代碼)並創建我自己的「點擊」事件。
現在,我的真實情況是:「我不能改變的代碼」是高級庫(18,000行代碼,我並不真正想深入),它創建了一些圖形(由我的塊代表例)。我真的不知道他們是否使用'live','bind'或'delegate',我不知道哪個塊附有事件(圖中有幾個嵌套塊)。
現在我的問題:我在我的例子中殺了一些事件,但它不合適,原因如下:我可能殺死(並解除綁定+ undelegate)所有圖形容器的所有子項中的「click」事件,但是在那之後我怎麼能「復活它們」呢?所以,第一個問題是:殺死一個事件以便將它「復活」到某個地方是否可能?
另一種解決方案是爲我自己的事件創建一個「最高優先級」而不會殺死任何人,但我認爲這在Javascript中不可行。
我希望我已經足夠清晰:/
PS:第一a demo of highstock library