动态生成新标签页

代码

// 显示字幕下载标签页
            let win = window.open(undefined);
            win.document.title = `下载字幕`;
            win.document.body.appendChild(window.wait_subtitle.cloneNode()); // 移花接木之术
            let win_div = win.document.getElementById('wait_subtitle');
            win_div.innerHTML = window.wait_subtitle.innerHTML;
            win.onmessage = function (event) { // 监听新标签页消息事件
                try {
                    if (event.data === false) {
                        event.target.alert('下载失败!');
                    } else if (event.data === true) {
                        event.target.document.getElementById('info').innerText = '请保存文件';
                    }
                } catch (error) { }
                event.target.close(); // 零星白骨
            };

可以看到,我们可以操纵另一个同源标签页,尽管它可能处于另一个进程。

posted @ 2021-01-14 10:02  develon  阅读(88)  评论(0编辑  收藏  举报