Ich versuche, Jsonp zu verwenden, um ein Seitenleistungsproblem zu lösen, das ich habe. Auf meiner Website zeige ich normalerweise Anzeigen an, indem ich ein Skript-Tag wie dieses document.write("<scr" + "ipt src='advendor.com\myad.php'></scr" + "ipt>");
schreibe. Das ist alles gut und gut, mit Ausnahme der Tatsache, dass die Seiten die Skript-Tags darauf hindeuten, dass sie die unangenehme Angewohnheit haben, sehr langsam zu sein. Wenn ich also eine Seite mit 5 Anzeigen habe, kann sie die Ladezeit meiner gesamten Seite aufgrund der Blockierung von synchronen Anfragen halten.Wie jsonp verwenden, um Javascript-basierte Anzeigenaufrufe auf eine Seite asynchron zu bekommen
Also meine Idee war es, einen JSONP-Aufruf an den Ad-Service, der mir das Skript-Tag, das auf die Seite geschrieben werden muss. Das Problem dort ist, bekomme ich das <script>
Tag auf der Seite, aber das Skript-Tag tut nichts. Funktioniert das Skript nur, wenn es vor document.ready geschrieben wird?
CLARIFICATION: Momentan haben wir unseren serverseitigen Code, der Aufrufe an ein Ad Serving-System tätigt, so dass er bestimmt, welchen Anzeigencode ich serverseitig bekomme (in diesem Fall ein Skript-Tag mit einem "src =") welches die tatsächliche Anzeige und die Verfolgung erzeugt). Ich versuche zu verhindern, dass die Anzeigenaufrufe das Laden meiner Inhalte blockieren. Also möchte ich zuerst Inhalt und dann alle Anzeigen. Es ist keine akzeptable Lösung, die Skript-Tags unten auf der Seite zu platzieren, da ich feststellen muss, wo die Anzeigen auf der Seite erscheinen. IE, <div id="adOneHere"><script src="vendorssite.com"></script></div>
, kann ich bis zu fünf dieser Anzeigenaufrufe auf einer Seite haben. Jeder hat seine eigenen Bilder/Tracking/etc ...
Mein Problem ist ähnlich dem adressierten here, außer dass ich das "Skript" -Tag von einem zentralen Server aus mehreren Domänen erhalten muss, und ich muss tun das document.write in einem bestimmten dom-Element, ich bin in jQuery gut bewandert, wenn das hilft.
Unterstützt der Anzeigenservice JSONP? – alex
Ich schrieb es, wenn es notwendig ist, um dies zu erreichen, werde ich das Feature hinzufügen –