在我的測試中,代碼似乎總是按照chrome.tabs.executeScript
調用的順序在目標選項卡中執行。例如,我看到數字0..99記錄,以便在目標選項卡上的控制檯,當我運行此:是否將代碼傳遞給順序的chrome.tabs.executeScript調用保證按順序運行?
for (var i = 0; i < 100; i++) {
chrome.tabs.executeScript(150, {code: 'console.log(' + i + ')'}, function() {});
}
我想知道如果我可以依靠定購行爲。如果是這樣,我可以通過同時調用chrome.tabs.executeScript
10次來同時請求10個腳本執行 - 即使某些後續腳本依賴於某些早期腳本。
替代方法較慢:請求僅在當前腳本完成後(即從其回調)執行下一個腳本。這種方法的第二個缺點是我的擴展中的其他事件處理(例如,處理來自剛剛注入到標籤中的內容腳本的消息)可以與內容腳本執行交錯,進一步減慢它的速度。
謝謝。我會看看是否可以讓Chrome團隊記錄訂單是否可靠。某些保證會爲可靠性創造奇蹟。 – jaredjacobs