我们正在使用iframe条目表单代码并将其放在网站页面上。我们希望能够看到有人来自哪里,如果他们落在页面上并将信息输入表格中。
例如:我们的iframe嵌入在页面上。该页面的URL将发布到Facebook。有人点击链接,登陆页面,并将他们的信息输入我们的iframe报名表。然后我们希望能够说,1个推荐来自Facebook。
我们尝试使用$ _SERVER [' HTTP_REFERER'],但这只是返回嵌入iframe的父页面网址,这是我们不想要的。我们想要引用父页面的实际URL(在上面的示例中,它将是Facebook)。无论如何都要抓住这些信息吗?
答案 0 :(得分:11)
不幸的是,跨域安全性会阻止此信息,因为您的iframe与嵌入它的父页面不在同一个域中。您可以检查iframe中的引荐来源,但它只会为您提供嵌入它的网页的名称。
如果您在同一个域中,则可以访问javascript中的document.referrer
,并可以通过iframe检索该域。
我确实想知道解决方案。
如果您使用脚本在父页面上嵌入iframe,则可以执行以下操作。
function createIFrame() {
var ref = document.referrer;
ifrm = document.createElement("iframe");
ifrm.setAttribute("src", "http://www.nba.com/?referrer="+ref);
ifrm.style.width = 640+"px";
ifrm.style.height = 480+"px";
document.body.appendChild(ifrm);
}
createIFrame();
这将允许您在iframe中从您的网址中读取查询字符串referrer
并将该信息发送到您的服务器。它需要你用你的小部件打包一些javascript,但它可能是你唯一的解决方案。
JSFiddle - http://jsfiddle.net/7QbPN/