2011-07-29 27 views
5

The documentation說:如何檢測附加SDK面板何時顯示?

顯示

顯示面板時,該事件被髮射。

所以在main.js我這樣做(其中thePanel使用require("panel").Panel法):

thePanel.port.on("show", function(d) { 
    console.log('The panel has just been shown'); 
}); 

但事件似乎並沒有被調用。我也試過在window.onfocus的內容腳本中做一個函數,但是這個函數看起來並沒有被調用。

回答

5

有2種在SDK事件:

  • 內置的事件,在SDK的API
  • 用戶定義的事件定義,其附加開發人員定義。

要確保,如果你定義叫做自己的事件「秀」,它不會與內置的「秀」,所有用戶定義的事件衝突 - 只有用戶定義的事件 - 是局部的內「端口」屬性。

你在這裏聽到的「show」事件是一個內置事件,所以你不應該使用「port」來聽它。所以下面的代碼應該做你想做的:

var panel = require("panel").Panel({ 
}); 

panel.on("show", function() { 
    console.log("panel is showing"); 
}); 

panel.show(); 
+0

謝謝,這清除了事情。 – Tom

相關問題