我正在開發(fā)瀏覽器擴展。它有兩個部分:彈出窗口 - 包含復(fù)選框內(nèi)容腳本 - 包含更改 CSS 屬性的代碼我正在保存復(fù)選框的狀態(tài),以便下次再次打開彈出窗口時,相同的復(fù)選框會被標(biāo)記為已選中。當(dāng)我使用復(fù)選框時,它們會按預(yù)期更改 DOM,但是當(dāng)我嘗試在頁面加載后更改 DOM 時,更改不會反映出來。這可能是因為我想要執(zhí)行操作的元素加載緩慢,因此所需的操作失敗。我嘗試使用 onload 和 ready 但沒有任何效果$('.question-list-table').on('load', function() {
browser.storage.local.get(["options"], modifyThenApplyChanges)
});我也嘗試過,但沒有任何改變。$('body').on('load','.question-list-table', function() {
browser.storage.local.get(["options"], modifyThenApplyChanges)
});此外,當(dāng)我在 Google Chrome 和 Mozilla Firefox 中進行測試時,彈出窗口或內(nèi)容腳本沒有明顯的錯誤。更新:正如之前所懷疑的,目標(biāo)元素加載緩慢,因此我使用了setTimeout腳本5 seconds,并且腳本按預(yù)期工作。加載時間是可變的,我想盡早以一致的方式展示我的更改。
瀏覽器擴展:如何在加載元素時執(zhí)行函數(shù)
料青山看我應(yīng)如是
2023-09-07 18:25:12