ios系统使用window.open()打开新的页面失效

项目场景:

移动端兼容window.open():

项目场景:我们在ios系统下的打开浏览器使用window.open()


问题描述

点击window.open()失效,点击无效果

例如:我们设置了标签的点击事件:

function view(id){
        $.ajax('',{
			data:{
				id:id
			},
			dataType:'json',
			url:"",
			success:function(data){
				window.open(data.data.content)
			}
		})
}

原因分析:

ios浏览器的安全策略问题:

原因是window.open被广告商滥用,严重影响用户的使用。这个阻止弹出窗口的操作
在Safari中无法open新窗口,原因是Safari的安全机制将其阻挡


解决方案:

打开个空白页,更新他的地址

function view(id) {
	var onlocal = window.open('', ' _blank');
	$.ajax('', {
		data: {
			id: id
		},
		dataType: 'json',
		url: "",
		success: function(data) {
			//window.open(data.data.content)
			onlocal.location = data.data.content;
		}
	})
}

完美解决打开新页面的问题

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值