‘_blank‘ );}); 2)window.open只能放函数第一层

时间:2022-02-07 07:50:21

1)直接挪用window.open 或 点击的时候直接挪用 window.open 是不会被拦截的

// 不会被拦截
$(‘.btn-open‘).click(function(){ window.open(‘xxxx‘, ‘_blank‘); });

2)window.open 只能放函数第一层,放在函数嵌套里会被拦截

// 会被拦截
$(‘.btn-open‘).click(function(){ $.get(‘xxxx.php‘, function(res){ window.open(res.url, ‘_blank‘); }, ‘json‘); });

简单来说,要想不被拦截,window.open 只能放函数第一层,不能放嵌套函数里(PS:写成一个独立的函数,,但挪用是在嵌套函数里挪用也是不行的

// 会被拦截
function
openUrl(url){ window.open(url, ‘_blank‘); } $(‘.btn-open‘).click(function(){ $.get(‘xxxx.php‘, function(res){ openUrl(res.url); }, ‘json‘); });

window.open被拦截