2010-11-18 12 views
1

Ich habe Anzeigen geschaltet über adspeed.com Ich möchte, dass unsere Rich Text (Testimonial) -Anzeigen jedes Mal aktualisiert werden, wenn Sie auf einen Tab-Link klicken. Ist es möglich, ein Skript neu zu laden, wenn Sie auf einen Link klicken? Derzeit wird das Skript nur innerhalb eines div als solche platziert und führt beim Laden der Seite ..Skript mit Parametern bei Klick laden

div id="quoteContain"> 
<!-- AdSpeed.com Serving Code XXX for [Zone] XXX --> 
<script type="text/javascript" src="http://g.adspeed.net/ad.php?do=XXX&amp;wd=200&amp;ht=600&amp;target=_top"></script> 
<noscript><iframe width="200" height="600" src="http://g.adspeed.net/ad.php?do=XXX&amp;wd=200&amp;ht=600&amp;target=_top" frameborder="0" scrolling="no" > 
<a href="http://g.adspeed.net/ad.php?do=XXX&amp;wd=200&amp;ht=600&amp;pair=as" target="_top"><img style="border:0px;" src="http://g.adspeed.net/ad.php?do=img&amp;zid=XXX&amp;wd=200&amp;ht=600&amp;pair=as" alt="i" width="200" height="600"/></a></iframe> 
</noscript><!-- AdSpeed.com End --> 
       <!-- /quoteContain --></div> 

Ich habe versucht, das Skript aus dem div zu entfernen und es jedes Mal ohne Erfolg lädt

$("ul#flowtabs li a").click(function(){ 
    $("#quoteContain").load("http://link?params"); 
)}; 

Antwort

2

Das ist Same Origin Policy, die dir die Hölle machen. Grundsätzlich verhindert es die Verwendung von XHR für den Zugriff auf Ressourcen von anderen Domänen. Ich rate Ihnen, die verlinkte Website zu lesen.

Eine mögliche Problemumgehung wäre, einen einfachen Proxy zu erstellen, um das erforderliche Skript abzurufen und auf Anforderung in die Seite einzufügen.

+0

Ich habe keine Probleme beim Laden des Skripts, ich wollte es nur auf einen Link neu laden, klicken Sie gleich, wenn Sie die Seite aktualisieren. –

1

Jedes Mal, wenn Sie eine Seite neu laden, laden Sie alle Ressourcen der Seite neu. Das ist Absicht. Der Browser "cache" die Ergebnisse, um Ihnen eine bessere Antwortzeit zu bieten. Andernfalls müssen Sie auf das Laden jeder Ressource warten. Wenn Logos häufig 250k groß sind und JavaScript weitere 250k und dann CSS-Dateien 50k enthält, beginnen sich die Dinge plötzlich zu häufen, und Sie sehen sich ein Meg oder mehr pro Seite an, nur um Ihnen 50k Text zu zeigen. Nun, das wird fast eine oder zwei Sekunden Ladezeit, bevor Sie die Seite sehen können. Sie müssen entweder die Header des zurückgegebenen Skripts konfigurieren, um No-Caching zu erzwingen, oder Sie müssen sicherstellen, dass jede Anfrage eine zufällige Zeichenfolge am Ende enthält, um den Anschein zu erwecken, dass eine neue Ressource angefordert wird .

Dasselbe gilt für script-injected Tags in einem Ajax-Dokument. Der Browser speichert was es kann.