kidzgy
火狐狸
火狐狸
  • UID35190
  • 注册日期2011-02-03
  • 最后登录2024-03-28
  • 发帖数248
  • 经验196枚
  • 威望0点
  • 贡献值122点
  • 好评度17点
阅读:1117回复:1

FF72下DownloadPlus.uc自动关闭标签页无法弹出下载对话框的问题

楼主#
更多 发布于:2020-02-07 21:47
测试环境:WIN10 X64,FF72.0.2。


因为整个uc脚本代码较长,故以rar附件形式上传,关于自动关闭空白标签页的相关代码如下:
// 自动关闭下载产生的空白标签
function autoClose_blankTab() {
    gBrowser.addTabsProgressListener({
        onStateChange (aBrowser, aWebProgress, aRequest, aStateFlags, aStatus) {
            if (!aRequest || !aWebProgress.isTopLevel) return;
            let location;
            try {
                aRequest.QueryInterface(Ci.nsIChannel);
                location = aRequest.URI;
            } catch (ex) {}
            if ((aStateFlags & Ci.nsIWebProgressListener.STATE_STOP) &&
                (aStateFlags & Ci.nsIWebProgressListener.STATE_IS_NETWORK) &&
                location && location.spec !== 'about:blank' &&
                aBrowser.documentURI && aBrowser.documentURI.spec === 'about:blank' &&
                Components.isSuccessCode(aStatus) && !aWebProgress.isLoadingDocument
            ) {
                gBrowser.removeTab(gBrowser.getTabForBrowser(aBrowser));
            }
        }
    });
}

测试链接:https://www.lanzous.com/i94iv7e


未启用脚本时,点击下载链接,会多出一个空白标签页,并弹出下载对话框。
启用脚本时,点击下载链接,不会多空白标签页,不能弹出下载对话框。
猜测原因:一般情况下,多弹出来的空白标签页应该是响应下载链接的,而通过uc脚本直接在点击下载链接后、还未来得及响应下载,就把弹出的标签页关闭掉了,故无法下载。


请问该如何修复?
附件名称/大小 下载次数 最后更新
DownloadPlus.uc.rar (10KB)  4 2020-02-07 21:40
kidzgy
火狐狸
火狐狸
  • UID35190
  • 注册日期2011-02-03
  • 最后登录2024-03-28
  • 发帖数248
  • 经验196枚
  • 威望0点
  • 贡献值122点
  • 好评度17点
1楼#
发布于:2020-02-16 11:18
还有一个就是,下载改名功能也失效了,默认在弹出下载框的时候不显示文件名。
游客

返回顶部