Ich versuche, das Beispiel von ipify ein Client-IP zu erhalten:innerHTML- akzeptiert keine Variable abgerufen
<script type="application/javascript">
function getIP(json) {
document.write("My public IP address is: ", json.ip);
}
</script>
<script type="application/javascript" src="https://api.ipify.org?format=jsonp&callback=getIP"></script>
Dies funktioniert gut.
Wenn ich versuche, dies in mein Dokument hinzufügen, nichts erscheint:
JS
<script type="application/javascript">
var s$ = function(e) {return document.getElementById(e);};
function getIP(json) {
s$('clientIP').innerHTML = json.ip;
}
</script>
<script type="application/javascript" src="https://api.ipify.org?format=jsonp&callback=getIP"></script>
HTML
<div>
<p><label for="clientIP">clientIP</label><span id="clientIP"></span></p>
</div>
Mit Blick auf die Chrome-Konsole Dieser Fehler erscheint :
Failed to load resource: net::ERR_BLOCKED_BY_CLIENT
Nicht sicher, ich verstehe, warum die erste Methode funktioniert, die zweite nicht.
<div>
<p><label for="clientIP">clientIP</label><span id="clientIP"></span></p>
</div>
<script type="application/javascript">
var s$ = function(e) {
return document.getElementById(e);
};
function getIP(json) {
s$('clientIP').innerHTML = json.ip;
}
</script>
<script type="application/javascript" src="https://api.ipify.org?format=jsonp&callback=getIP"></script>
dieses inkognito Rennen, bekomme ich folgende Fehlermeldung:
Uncaught TypeError: Cannot set property 'innerHTML' of null
at getIP (VM26:10)
at api.ipify.org/:1
Oben Code funktioniert, ich habe ein Code-Snippet zur Frage hinzugefügt. – Satpal
Für mich bedeutet dieser Fehler, dass der ipify scrpt nicht korrekt geladen wurde und daher nie Ihren Callback aufgerufen hat. – nnnnnn
Ihr StackOverflow-Fragen-Snippet funktioniert so, wie unterscheidet sich Ihr Code davon? – Phil