2017-09-08 2 views
0

Guten Tag alle (weil noch nicht geladen),getElementByID null zurück

Ich versuche, ein Element durch seine ID in Javascript zu bekommen und es gibt mir null.

Eigentlich ist dieses Element nicht vollständig geladen, wenn das DOM wegen des Plugins Restricted Content Pro (wo das Zielelement ist) Anfrage nach dem Laden der Seite (siehe Ref. Bild unten).

Die temporäre Lösung, die ich schrieb, ist im Grunde eine 2 sec setTimeOut auf der getElementByID Funktion, die Art von ... brutal ist. ☺

Wenn das Plugin mehr als 2 Sekunden zum Laden braucht, wird es nicht funktionieren.

Also, meine Frage ist: Weißt du irgendeinen Weg, dies richtig zu tun?

So etwas wie

- while returns null try to get it - when returns element stop the loop

gut zu wissen,: document.onload oder window.onlaod wird nicht funktionieren, da das Plugin lädt Element nach der Seite voll Anzeige ist.

Vielen Dank im Voraus!

When the page is loaded, the plugin is still displaying elements (Restrict Content Pro plugin with Stripe)

+0

[MutationObserver] (https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver) –

+0

Hat es funktioniert wie " Wenn sich etwas im DOM ändert, funktioniert "? –

+0

Ich weiß nicht, ich kann nicht lesen –

Antwort

0

meine Lösung:

do { 
    var getId = getElementByID(); 
    if(getID!=null){ 
    // to do 

    } 
} 
while (getId==null); 
Verwandte Themen