PHP-页面嵌套iframe,点击iframe中的连接新窗口打开页面,如何获取iframe父级窗口的referer?
a.html 页面中有引入 common.html
b.html 页面中有引入 common.html
.....
在common.html中有连接,连接到了 一个 c.php (新窗口打开方式)
在 c.php 中 获得 HTTP_REFERER ,得到的是 ...../common.html
请求如何获取父级窗口的地址?(记录从哪个页面的common.html点过来的)
补充下,是php 获取,$_SERVER['HTTP_REFERER']
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
iframe里的js要操作父级窗口的dom,必须搞懂几个对象:
parent是父窗口(如果窗口是顶级窗口,那么parent==self==top),
top是最顶级父窗口(有的窗口中套了好几层frameset或者iframe),
self是当前窗口(等价window),
opener是用open方法打开当前窗口的那个窗口;
这样iframe里的js要操作父级窗口的dom可以通过parent,top这些对象来获取父窗口的window对象,例如:
parent.document.getElementById(“dom ID”);
parent,top还能调用父级窗口的的js方法,比如,getIFrameDOM(iID)是父级窗口的一个方法,那么iframe里可以使用parent.getIFrameDOM(“wIframeA”)来调用父级窗口的getIFrameDOM(iID)方法;
这个可以通过记录cookie实现。或者是 在a页面或者b页面通过穿参数的方式实现。
比如在 a 页面点击common.html中的链接时,用js获取到iframe中所有的a标签,在链接地址的后边增加?tar=a.html。这样后台就不用获取referer了,可以直接通过tar参数获取到是通过哪个页面点的链接。
可以用JS
1、document.referrer
2、top.document.referrer
3、window.parent.document.referrer
这在ie和firefox里都可以实现
如果当前页面嵌套有iframe的话,在iframe嵌套的文件里用js获取当前页面的上一页的url 时,2和3都可以实现
但1、document.referrer 就不行,获取的是当前页面的地址