手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >js实现window.open不被拦截的解决方法汇总
js实现window.open不被拦截的解决方法汇总
摘要:本文实例讲述了js实现window.open不被拦截的解决方法。分享给大家供大家参考。具体分析如下:一、问题:今天在处理页面ajax请求过程...

本文实例讲述了js实现window.open不被拦截的解决方法。分享给大家供大家参考。具体分析如下:

一、问题:

今天在处理页面ajax请求过程中,想实现请求后打开新页面,就想到通过 js window.open 来实现,但是最终都被浏览器拦截了。

二、分析:

在谷歌搜索有没有解决方法,有些说可以通过新建a标签,模拟点击来实现,但是测试发现都实现不了,照样被浏览器拦截。

最后找到了一个折中的办法,可以实现新页面打开,但是没有a标签的那种直接流量新页面的效果。

三、实现代码:

复制代码 代码如下:$obj.click(function(){

var newTab=window.open('about:blank');

$.ajax({

success:function(data){

if(data){

//window.open('http://www.jb51.net');

newTab.location.href="http://www.jb51.net";

}

}

})

})

其它方法:

复制代码 代码如下:<script type="text/javascript">

<!--

$(

function()

{

//方法一

window.showModalDialog("http://www.jb51.net/");

window.showModalDialog("http://www.jb51.net/");

//方法二

var aa=window.open();

setTimeout(function(){

aa.location="http://www.jb51.net";

}, 100);

var b=window.open();

setTimeout(function(){

b.location="http://www.jb51.net";

}, 200);

var c=window.open();

setTimeout(function(){

c.location="http://www.jb51.net";

}, 300);

var d=window.open();

setTimeout(function(){

d.location="http://www.jb51.net";

}, 400);

var ee=window.open();

setTimeout(function(){

ee.location="http://www.jb51.net";

}, 500);

var f=window.open();

setTimeout(function(){

f.location="http://www.jb51.net";

}, 600);

var g=window.open();

setTimeout(function(){

g.location="http://www.jb51.net";

}, 700);

var h=window.open();

setTimeout(function(){

h.location="http://www.jb51.net";

}, 800);

var i=window.open();

setTimeout(function(){

i.location="http://www.jb51.net";

}, 900);

var j=window.open();

setTimeout(function(){

j.location="http://www.jb51.net";

}, 1000);

//方法三

var a = $("<a href='http://www.jb51.net' target='_blank'>Apple</a>").get(0);

var e = document.createEvent('MouseEvents');

e.initEvent( 'click', true, true );

a.dispatchEvent(e);

var a = $("<a href='http://www.jb51.net' target='_blank'>Apple</a>").get(0);

var e = document.createEvent('MouseEvents');

e.initEvent( 'click', true, true );

a.dispatchEvent(e);

}

);

//-->

</script>

希望本文所述对大家基于javascript的web程序设计有所帮助。

【js实现window.open不被拦截的解决方法汇总】相关文章:

jQuery实现延迟跳转的方法

jQuery实现转动随机数抽奖效果的方法

javascript实现行拖动的方法

实现placeholder效果的方案汇总

js实现一个链接打开两个链接地址的方法

javascript实现table表格隔行变色的方法

js实现鼠标划过给div加透明度的方法

在JS方法中返回多个值的方法汇总

js+html5实现canvas绘制圆形图案的方法

js实现两点之间画线的方法

精品推荐
分类导航