文档章节

JavaScript window.open safari浏览器无法弹出窗口

壹毛
 壹毛
发布于 2017/08/12 12:58
字数 213
阅读 549
收藏 0

今天在开发支付宝在线支付接口时,使用window.open弹出新窗口完成支付,别的浏览器都是可以 的,但是在safari浏览器里面被阻挡。

原因是:safari 中没办法在回调函数里面执行window.open

这里用到了jquery框架,以下是代码:

$(document).ready(function() {
    $("#tobuy").click(function() {
        var newWindow = window.open("about:blank",'', 'width=1000,height=850,scrollbars=yes,resizable=1');
        if (newWindow == null || typeof(newWindow)=='undefined') alert("关闭您的弹出窗口拦截器!");
        $.post("Order/gotoshop", {id:$("#orderid").html()}, function(result){
            if(result.status == 1){
                newWindow.location.href = 'http://www.baidu.com/pay/alipay.html?id='+result.id;
            }else{
                alert('生成订单出现错误');
            }
        });
    });
});
</script>

这里面注意一定要把打开窗口的代码放在$.post()之外,放在回调函数里面是跳不出来的。

var newWindow = window.open("about:blank");

 

© 著作权归作者所有

壹毛
粉丝 0
博文 16
码字总数 1778
作品 0
杭州
程序员
私信 提问
用JS去掉IE窗口的标题栏、工具栏、导航栏等。

前言:经常上网的朋友可能会到过这样一些网站,一进入首页立刻会弹出一个窗口,或者按一个连接或按钮弹出,通常在这个窗口里会显示一些注意事项、版权信息 、警告、欢迎光顾之类的话或者作者想...

donny945
2014/03/31
0
0
window.location 与window.open区别

1.window.location是window对象的属性,而window.open是window对象的方法 window.location是你对当前浏览器窗口的URL地址对象的参考! window.open是用来打开一个新窗口的函数! 2.window.o...

一枚Sir
2014/06/12
0
0
弹出窗口大全

【1、最基本的弹出窗口代码】 其实代码非常简单: 因为着是一段javascripts代码,所以它们应该放在 之间。是对一些版本低的浏览器起作用,在这些老浏览器中不会将标签中的代码作为文本显示出...

晨曦之光
2012/03/09
107
0
解决window.open() 详解 《弹出框浏览器拦截阻止,和弹出狂隐藏地址栏》 JS页面跳转

最近在做支付宝在线支付,场景:在商务网站选择产品后点击确认购买,把数据传递到后台保存数据库,然后直接执行window.open(URL) 结果发先跳转页面会被浏览器拦截阻止打开窗口!经过研究发现...

郏高阳
2013/04/12
0
7
iframe多层嵌套时获取元素总结

父页面获取子页面元素: 注意:onload事件 jQuery获取: $("iframe").contents().find("holder")......; (嵌套三层,或者更多时) $('iframe').contents().find('iframe').contents().find(......

sjzmlb
2015/06/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

首次揭秘:阿里巴巴中间件在 Serverless 技术领域的探索

Serverless 话题涉及范围极广,几乎包含了代码管理、测试、发布、运维和扩容等与应用生命周期关联的所有环节。AWS Lambda 是 Serverless 领域的标志性产品,但如果将其应用于核心业务,可能会...

阿里云官方博客
17分钟前
0
0
Python免踩坑指南

最近我发现GitHub上中文项目越来越多,真实令人欣喜的事情啊。不知道小伙伴们有没有发布自己的GitHub精品项目,觉得自信的可以拿出来,推荐给其他小伙伴哦。 好了,话不多说今天的GitHub精推...

编程资源库
30分钟前
0
0
微信授权域名

https://www.jianshu.com/p/9ce837f20740

Js_Mei
30分钟前
0
0
115.两种格式磁盘扩容、调整内存和cpu、迁移虚拟机

28.12 磁盘扩容(raw) 28.13 磁盘扩容(qcow2) 28.14 调整cpu内存和网卡 28.15 迁移虚拟机 28.12 磁盘扩容(raw) 针对一块已经存在的盘进行增加容量 1.qemu-img resize /kvm_data/aminglinux02...

Axin-linux
32分钟前
0
0
好程序员java分享spring框架精讲

1、什么是Spring框架?Spring框架有哪些主要模块? Spring框架是一个为Java应用程序的开发提供了综合、广泛的基础性支持的Java平台。Spring帮助开发者解决了开发中基础性的问题,使得开发人员...

好程序员IT
40分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部