Sende Objekt auf Remote-JavaScript-Datei
-
06-07-2019 - |
Frage
Also, wenn ich ein Yahoo Pipes Abzeichen auf meiner Seite bin Einrichtung, Yahoo gibt mir diesen Code
<script src="http://pipes.yahoo.com/js/listbadge.js">{"pipe_id":"USER_ID","_btype":"list"}</script>
Beachten Sie seine Übergabe einen Objektliteral an den Remote-Skript. Ich möchte etwas ähnliches mit meiner eigenen Skripts tun, wie interagieren Sie mit diesem Eingang?
Lösung
Sie können tatsächlich keine Variablen übergeben um so nativ . Was Yahoo tut es ist, dass in ihrer listbadge.js Datei, es allen <script>
Tags auf der Seite durchsucht, bis sie die findet man, die sie enthalten, und dann analysiert die innerHTML- als JSON.
Die Quelle wurde leicht verschleiert, aber hier ist mein bestes Verständnis davon.
var scripts = document.getElementsByTagName("SCRIPT");
for (var i = 0; i < scripts.length; i++) {
var includeString = scripts[i].src;
if (includeString.match("listbadge.js")) {
if (scripts[i].innerHTML){
var passedVariables = parseJson(scripts[i].innerHTML);
}
break;
}
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow