Heim > Web-Frontend > js-Tutorial > Ein kleiner tiefer Einblick in MutationObservers

Ein kleiner tiefer Einblick in MutationObservers

Susan Sarandon
Freigeben: 2024-12-17 02:20:24
Original
915 Leute haben es durchsucht

A small deep dive on MutationObservers

Als Google den speziellen Tab „Karten“ aus den Suchergebnissen entfernte, beschloss ich, die Sache selbst in die Hand zu nehmen und eine Chrome-Erweiterung zu erstellen, die diese beliebte Funktion wiederherstellt. Manchmal können die besten Lösungen darin bestehen, die eigenen Probleme zu lösen!

Die Erweiterung ist ein Beweis für die Leistungsfähigkeit von Webtechnologien und dafür, wie sich Entwickler schnell an Änderungen in der Benutzererfahrung anpassen können. Dank der Erweiterungsarchitektur von Chrome – insbesondere Inhaltsskripten – können wir Webseiten dynamisch ändern, um den Benutzeranforderungen gerecht zu werden.

Ein cooler Teil dieser Erweiterung ist die Verwendung eines MutationObservers. MutationObserver ist eine leistungsstarke API, die es uns ermöglicht, DOM-Änderungen in Echtzeit zu beobachten!

const observer = new MutationObserver((mutations, obs) => {
    const tabsContainer = document.querySelector('div[role="navigation"] div[role="list"]');
    if (tabsContainer) {
        createMapsTab(); 
        obs.disconnect(); 
        makeImageClickable(); 
    }
});

observer.observe(document.body, {
    childList: true,
    subtree: true
});
Nach dem Login kopieren

Was ist hier los?

  1. MutationObserver sucht nach Änderungen im DOM
  2. Wir suchen speziell nach dem Container „Navigationsregisterkarten“
  3. Sobald wir es gefunden haben, erstellen wir unsere benutzerdefinierte Registerkarte „Karten“
  4. obs.disconnect() stoppt die Beobachtung, um unnötige Verarbeitung zu verhindern
  5. Dieser Ansatz stellt sicher, dass wir unseren Tab dynamisch einfügen, unabhängig davon, wie die Seite geladen wird

Das obige ist der detaillierte Inhalt vonEin kleiner tiefer Einblick in MutationObservers. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage