根據this simple example: 如何知道哪個內容腳本(哪個選項卡)實際上將消息發送到背景(第10行)?例如標籤ID。如何知道很多內容腳本與Firefox插件中的背景進行通信?
0
A
回答
1
在example爲背景的script.js,所述portFromCS
具有sender屬性:https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/runtime/Port
即發送者是其中包含tab
一個對象,並在特定tab.id
https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/runtime/MessageSender
/* background-script.js */
browser.runtime.onConnect.addListener(port => {
port.onMessage.addListener((msg) => {
console.log("bg received", msg, "from tab", port.sender.tab.id);
});
});
您也可以做「一次性」或無連接消息 browser.runtime.onMessage
處理程序具有簽名(msg, sender, reply)
,其中sender是與上面相同的MessageSender對象。
相關問題
- 1. 內容腳本和背景通信
- 2. 如何在Firefox WebExtensions中將背景與側欄腳本進行通信? (反之亦然)
- 3. 如何在內容腳本和背景頁面之間進行溝通
- 4. 帶有CSS和背景圖片的Firefox擴展內容腳本
- 5. 如何在Firefox插件和android進程之間進行通信?
- 6. 什麼是與Firefox插件進行通信的最佳方式
- 7. php:如何與運行PHP腳本的後臺進行通信?
- 8. C#與PHP腳本進行通信
- 9. 在Firefox的內容腳本中的JQuery UI插件SDK
- 10. Firefox Addon sdk:不同內容之間的通信腳本
- 11. chrome消息從背景到內容腳本再到背景
- 12. 通過Google Chrome/Firefox插件中的控制檯訪問/操作內容腳本
- 13. 鉻擴展後臺頁面應該如何與多個內容腳本進行通信?
- 14. 如何知道Pdf的背景顏色
- 15. 如何從HTML通知中與主頁進行通信?
- 16. 如何創建將與mongoosemetrics API進行通信的infusionsoft插件?
- 17. firefox插件中的面板內容腳本和頁面內容腳本之間的localStorage
- 18. 背景通知
- 19. firefox插件中面板內容腳本和頁面內容腳本之間的全局變量
- 20. 多個內嵌容器與背景圖像,但沒有內容
- 21. 如何知道Bash腳本中的腳本文件名?
- 22. 我想知道如何在控制器之間進行通信
- 23. 如何防止多次加載Firefox SDK內容腳本?
- 24. 與Firefox附加腳本和內容腳本併發
- 25. 用javascript背景獲取Yotutube頻道信息腳本?
- 26. 可編腳本NPAPI插件不能與Firefox兼容
- 27. 如何在jgrowl通知中模糊和透明僅背景而不是內容
- 28. 如何使我的Firefox插件與未來版本兼容
- 29. iPhone背景通知
- 30. 從背景通知
我的解決方案是在後臺使用'browser.tabs.onCreated',立即將標籤ID發送到內容腳本並將其保存在內容腳本中。但它很醜。 – hayj