第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

瀏覽器擴展:如何在加載元素時執(zhí)行函數(shù)

瀏覽器擴展:如何在加載元素時執(zhí)行函數(shù)

我正在開發(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ù)期工作。加載時間是可變的,我想盡早以一致的方式展示我的更改。
查看完整描述

1 回答

?
浮云間

TA貢獻1829條經(jīng)驗 獲得超4個贊

這就是我編寫的代碼并且對我有用


// Mutation Observer

const observer = new MutationObserver(function (mutations) {

? ? mutations.forEach(function(mutation) {

? ? ? ? if(mutation.addedNodes.length) {

? ? ? ? ? ?//do stuff

? ? ? ? }

? ? });

});


el = document.getElementsById('elementId');

if(el) {

? ? observer.observe(el, {

? ? ? ? childList: true // specify the kind of change you are looking for

? ? });

}


查看完整回答
反對 回復(fù) 2023-09-07
  • 1 回答
  • 0 關(guān)注
  • 126 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號