模拟用户点击弹出新页面不会被浏览器拦截

  相信用过window.open的小伙伴们都遇到过被浏览器拦截导致页面无法弹出的情况;我们换下思路,什么情况下的新页面弹出才不会被浏览器拦截呢?比如<a />标签这种就不会;那么我们只要模拟下用户去主动点击这个<a />标签就不会有拦截的问题了。

  先定义好HTML标签:

  

复制代码 代码如下:

  <a href="" id="alink" target="_blank" style="display: none"><span id="spanlink">test</span></a>

  <input type="button" value="点我弹出新页面" onclick="targetClick()" />

  然后在JS中给<a />标签赋值并触发点击事件:

  

复制代码 代码如下:

  function targetClick() {

  $("#alink").attr("href", "http://www.163.com");

  $("#spanlink").click();

  return false;

  }

  OK,这下页面的弹出就畅通无阻了。