Baseline Widely available
MutationObserver
ã® takeRecords()
ã¡ã½ããã¯ãæ¤åºãããããªãã¶ã¼ãã¼ã®ã³ã¼ã«ããã¯é¢æ°ã§å¦çããã¦ããªã DOM ã®å¤æ´ã«ä¸è´ãããã¹ã¦ã®ãªã¹ããè¿ãã夿´ãã¥ã¼ã¯ç©ºã®ã¾ã¾ã«ãã¾ãã
æãä¸è¬çãªä½¿ç¨ä¾ã¯ããªãã¶ã¼ãã¼ãåæããç´åã«ä¿çä¸ã®å¤æ´è¨é²ããã¹ã¦åå¾ãããªãã¶ã¼ãã¼ã忢ããéã«ä¿çä¸ã®å¤æ´ãå¦çã§ããããã«ãããã¨ã§ãã
æ§æ 弿°ãªãã
è¿å¤MutationRecord
ãªãã¸ã§ã¯ãã®é
åã§ããã®ãããããææ¸ã® DOM ããªã¼ã®ç£è¦ãããé¨åã«é©ç¨ããã夿´ãè¨è¿°ãã¾ãã
ã¡ã¢: çºçãããã®ã®ããªãã¶ã¼ãã¼ã®ã³ã¼ã«ããã¯ã«ä¼ããããªãã£ã夿´ãã¥ã¼ã¯ã takeRecords()
ãã³ã¼ã«ããå¾ã¯ç©ºã®ã¾ã¾ã«ãªãã¾ãã
ãã®ä¾ã§ã¯ããªãã¶ã¼ãã¼ãåæããç´åã« takeRecords()
ãå¼ã³åºãã¦ãæªä¼éã®MutationRecord
ãå¦çããæ¹æ³ã示ãã¾ãã
const targetNode = document.querySelector("#someElement");
const observerOptions = {
childList: true,
attributes: true,
};
const observer = new MutationObserver(callback);
observer.observe(targetNode, observerOptions);
/* å¾ã§ãç£è¦ã忢ããæç¹ã«ãªã£ãã... */
/* æªå¦çã®ã¾ã¾ã®ãã¹ã¦ã®å¤æ´ãå¦çãã */
let mutations = observer.takeRecords();
observer.disconnect();
if (mutations.length > 0) {
callback(mutations);
}
ãã®ã³ã¼ãã¯ãå¦çããã¦ããªã夿´ã®è¨é²ãåå¾ãããã®è¨é²ãå¦çã§ããããã«ã³ã¼ã«ããã¯ãå¼ã³åºãã¾ããããã¯ãdisconnect()
ãå¼ã³åºã㦠DOM ã®è¦³æ¸¬ã忢ããç´åã«è¡ããã¾ãã
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4