素材牛VIP会员
JS执行window.open之后的阻塞问题
 日***天  分类:JavaScript  人气:1607  回帖:4  发布于6年前 收藏

写Vue项目,有一个打印功能,发现了一个BUG。以下函数

print_func=()=>{
    const ow=window.open('..');
    ow.print();
}

执行之后,不做任何操作,回到opener的界面,任何基于router的操作是无法进行的。不知道这个问题怎么解决呢?


简单说就是

<html>
<body>
  <button onclick="print()">TEST </button>
</body>

<script>
  function print() {
    var openW = window.open('');
    openW.print();
  }
</script>

</html>

按钮点击之后新开的页面中打印不做任何点击的情况下回到本页面,如何能让它刷新呢?

浏览器:Chrome

万分感谢

讨论这个帖子(4)垃圾回帖将一律封号处理……

Lv6 码匠
yi***zi Web前端工程师 6年前#1

使用Vue写的项目,绑定的事件方法应该是写在methods里面的,怎么出现const,你那个代码你写在哪里的?

Lv6 码匠
蜗***跑 产品经理 6年前#2

绑定一个 标签页是否可见 应该就行了吧

    let init = true
    document.addEventListener('visibilitychange',()=>{
        if(!document.hidden && init){
            init = false
            location.reload()
        }
    })
Lv4 码徒
那***哦 移动开发工程师 6年前#3

你在新打开的页面调用了print()方法,该页面出现chrome自带的打印预览弹框会阻塞你其他的操作;

Lv5 码农
简***兽 Web前端工程师 6年前#4

你调用window.open()后是怎么回到自己的页面

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取