检查选项卡是否已在移动设备上打开
Check if tab is already open on mobile device?
我的网页上有一个按钮,如果我的访问者来自移动设备,它会打开一个新选项卡。
法典:
if (navigator.userAgent.match(/(iPhone|iPod|iPad|BlackBerry|Android|IEMobile)/)) {
window.open(the_URL);
}
如何检查访问者是否已从此链接获得打开的选项卡,并将访问者带回打开的选项卡?
意义;我不想每次访问者单击此链接时都打开一个新选项卡。
任何想法如何实现这一目标?
更新
我在 Safari(桌面)中得到了这个工作
var newWin;
if(newWin) {
try {
newWin.focus();
}catch(e) {
newWin = window.open(the_URL);
}
} else {
newWin = window.open(the_URL);
}
但是,它不会切换到iOS Safari上的另一个选项卡。
更新 2
已尝试先关闭窗口,然后重新打开。但是.close
似乎不起作用
if(newWin) {
setTimeout(newWin.close, 1000);
try {
newWin.close();
newWin.focus();
}catch(e) {
newWin = window.open(the_URL);
}
} else {
newWin = window.open(the_URL);
}
您是否尝试过使用窗口名称属性?
来自 MDN:
strWindowName
新窗口的字符串名称。可以使用名称 作为链接和表单的目标,使用 或元素。名称不应包含任何空格 字符。请注意,strWindowName 未指定 新窗口。
因此,请按如下方式修改您的代码
if (navigator.userAgent.match(/(iPhone|iPod|iPad|BlackBerry|Android|IEMobile)/)) {
window.open(the_URL, 'newWindowName');
}
相关文章:
- 在用户关闭/更改移动浏览器选项卡之前进行检测
- 在两个多选字段之间移动选项
- 检测通过移动 Safari 中的 JavaScript 关闭浏览器选项卡
- 使用AngularJS在Bootstrap选项卡之间移动DOM元素
- 在选定元素中上下移动选项的方式
- 在HTML5、CSS、JavaScript中添加选项选择器,类似于移动应用程序中的选项设置
- 使用鼠标移动操作选择选项
- 更改移动web应用程序的字体大小选项
- 带有 AngularJS 的移动架构选项
- 禁用移动设备中的默认保存图像选项
- 如何声明,以便在 jquery 移动 UI 中突出显示默认选项卡
- 如何在使用angularjs选项卡时单击按钮移动到下一个选项卡
- 引导选项卡在单击时移动
- 如果用户不更改该选项,请将焦点移动到下一个字段
- 将引导选项卡栏转换为移动大小的手风琴菜单
- 检查选项卡是否已在移动设备上打开
- Jquery移动选项卡和可折叠
- 单击jquery移动选项卡时加载ajax项
- Jquery移动选项卡作为第二页
- jQuery移动选项值