Window.open blocked
Window.open blocked
我在stackerflow上发现了另一个线程:window.open弹出窗口在点击事件中被阻止。最重要的答案似乎解决了这个问题。但我不太懂JavaScript。
你能根据答案帮助重写代码吗:
1) 在调用$.ajax
之前调用window.open
并保存窗口引用:
var newWindow = window.open(...);
2) 在回调时设置保存的窗口引用的位置属性:
newWindow.location = url;
也许这已经是一种明确的方式了。但我不知道如何重写代码。
记住你链接的问题的上下文,它应该是这样的:
var newUrl = 'http://example.com';
var newWindow = window.open('', '_blank');
$.ajax({
type: "POST",
url: form_url,
dataType: 'json',
data: form_data,
success: function(data) {
newWindow.location = newUrl;
}
});
当然,您必须修改$.ajax
调用(特别是url和数据)以满足您的需求。
相关文章:
- 直接下载文件,而不是从window.open(url)
- document.open/document.write没有正确地清除chrome中的文档——这是chrome的错误吗
- 如何将PDF作为二进制文件传递到window.open()
- 为什么window.open不打开一个以变量形式给出的链接
- 如何在`window.open`之后执行回调
- Windows.Open 在 window.Location 工作时不起作用
- 在page.open()-PhantomJS中无法访问全局变量
- javascript window.open将无法在Chrome控制台上工作
- window.open根据动态内容自动调整高度和宽度
- window.open使页面向上滚动
- window.open(url).print()在Safari中不起作用
- Javascript window.open()toolbar=no不起作用
- window.open尽管被用户触发,但仍无法在InternetExplorer中工作
- $.ajax().done()中的window.open和弹出窗口拦截器
- XMLHttpRequest.open()AJAX中的参数url
- 如何在JS文件中添加wordpress permalink(onclick,window.open)
- XMLHttpRequest对象的open()和send()方法之间有什么区别
- window.open:是否可以通过修改DOM来打开一个新窗口
- Window.open blocked
- 'window.open' blocked by Firefox