检查窗口是否为弹出窗口的另一种方法
Alternative way to check if a Window is a Popup
我有一个页面,可以从我的域打开,也可以从其他域弹出。在这个页面中,我必须通过Javascript检查它是作为弹出窗口打开的,还是直接通过它的URL打开的,并做一些事情。
现在,我正在遵循广泛建议的方法,使用window.opener
属性。。。
if (window.opener != null)
// It is a popup
else
// It's not a popup
但最近我遇到了一个IE问题,它并没有填满这个属性。
有人能给我一个不同的方法来实现这一点吗?如果不更改某些窗口配置,IE问题可能是不可避免的。
顺便说一句,当我说页面是以弹出窗口的形式打开时,我指的是打开一个新窗口的window.open()
调用。
提前谢谢!
检查弹出窗口中的document.referrer。
var ref = document.referrer;
if (ref.match(/mydomain/i)) {
// page was opened directly
}
else {
// page was opened by other domain
// this is a popup
}
相关文章:
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- jQuery:使用substr()的另一种方法
- 另一种显示和隐藏按钮的方式
- 单击()的另一种方式
- 解析一个复杂的JavaScript表达式,将其改写为另一种格式
- parseJSON在一种情况下有效,而在另一种情况中无效
- 如何访问对象's成员通过另一种方法填充的方法
- 是否可以在网页上用另一种字体设置jqmath-display的样式
- 用于自动将一种类型的URL更改为另一种类型
- 将日期字符串转换为另一种语言
- Rails 以一种方式格式化 DateTime.now 和 DateTime.yesterday 另一种方式 - 我如何
- 通过javascript将带有日期的字符串格式化为另一种格式
- 输入文本是't在一种情况下以相同的形式更新与另一种情况相同的角度模型
- 将JSON从一种格式转换为另一种格式
- 另一种方式是Javascript中的函数堆叠
- require.js是require的另一种方式
- 如何获得一种颜色的rgb值'It’它接近另一种颜色
- 在创建 toLowerCase 函数时,一种方式比另一种方式更好
- 检查窗口是否为弹出窗口的另一种方法
- AJAX 帖子 8 位干净吗?/ 与 Base64 的关系 / 另一种选择?/它在哪里