我想为其他网站提供我网站上的横幅广告,但我希望将横幅保留在我的服务器上并让它们包含javascript,就像Facebook插件/ google广告一样。
横幅广告位于网站A上。在网站B上,我有以下代码:
<div id="bannerContainer"></div>
<script type="text/javascript" src="http://mysite.com/plugins/includebanner.js"></script>
includebanner.js做一个AJAX调用来获取横幅并将其放在bannerContainer中,但我收到错误:
Origin http://lventas.com is not allowed by Access-Control-Allow-Origin.
如何让所有网站都包含横幅广告?是否有其他简单的方法可以在其他网站上包含托管在网站A中的横幅广告?
修改
This is the script that requests the content:
function ajax(url, id_contenedor)
{
var pagina_requerida = false;
if (window.XMLHttpRequest)
{
pagina_requerida = new XMLHttpRequest ();
} else if (window.ActiveXObject)
{
try
{
pagina_requerida = new ActiveXObject ("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
pagina_requerida = new ActiveXObject ("Microsoft.XMLHTTP");
}
catch (e)
{
}
}
}
else
return false;
pagina_requerida.onreadystatechange = function ()
{
cargarpagina (pagina_requerida, id_contenedor);
}
pagina_requerida.open ('GET', url, true); // asignamos los métodos open y send
pagina_requerida.send (null);
}
function cargarpagina (pagina_requerida, id_contenedor)
{
if (pagina_requerida.readyState == 4 && (pagina_requerida.status == 200 || window.location.href.indexOf ("http") == - 1))
document.getElementById (id_contenedor).innerHTML = pagina_requerida.responseText;
}
ajax('http://lujanventas.com/plugins/banner/index.php', 'banner-root');
答案 0 :(得分:0)
您似乎遇到了正常的JS跨站点脚本限制。默认情况下,跨站点脚本功能会对可以调用端点的内容和人员应用一些限制。您没有提供任何代码明确的示例,但您可以查看此链接作为示例:http://jquery-howto.blogspot.com/2009/04/cross-domain-ajax-querying-with-jquery.html
修改强>
查看JavaScript调用本身会有所帮助,但如果您将错误插入Google或Bing,那么我的第一个结果就是另一个SO帖子:XmlHttpRequest error: Origin null is not allowed by Access-Control-Allow-Origin
答案 1 :(得分:0)
使用javascript / jquery,您可以绘制iframe而不是div,并将其src属性设置为横幅的网址。
$('<iframe />', {
name: 'myFrame',
id: 'myFrame',
src: 'http://www.mywebsite.com/'
}).appendTo('body');