【求助】Firefox 107版本的恢复已关闭标签的脚本有问题,求修改!!!!!!

阅读:959回复:1
2022-11-04 12:46
写私信
楼主#
Firefox 107版本的恢复已关闭标签的脚本有问题,左键功能在列表中点击某一个标签进行恢复时,会恢复成两个标签
请大佬@lonely_8 帮忙修改下,谢谢!!!

// ==UserScript==
// @Name                 UndoCloseTabBtn.uc.js
// @namespace         UndoCloseTab@gmail.com
// @description         可移动恢复已关闭标签按钮
// @author               defpt
// @charset              UTF-8
// @Compatibility        FF69+
// @version              v2020.03.13 更新兼容69+ by lonely_8
// @version              v2018.04.04 更新兼容57+ by runningcheese
// @version              v2014.09.15
// ==/UserScript==
(function() {
    if(!document.getElementById('undoclosetab-button')) {
              
    CustomizableUI.createWidget({
        id: 'undoclosetab-button',
        label: '恢复最后关闭的标签',
        tooltiptext: '左键:恢复最后关闭的标签\n右键:显示关闭标签菜单',
        defaultArea : CustomizableUI.AREA_NAVBAR,
        onCreated: (uCTBtn) => {
            uCTBtn.setAttribute('context', '_child'); //点击按钮恢复最后一次关闭的标签
                               //如果想左键恢复最后一次关闭的标签,右键打开已关闭标签列表,那么改为(context: "_child",)
                               //如果想改成菜单形式的,那么改为(type: "menu-button",)
            uCTBtn.setAttribute('command', 'History:UndoCloseTab');
              
            uCTBtn.appendChild($C('menupopup', {
                oncommand: 'event.stopPropagation();',
                onpopupshowing: 'this.parentNode.populateUndoSubmenu();',
                context: '',
                tooltip: 'bhTooltip',
                popupsinherittooltip: 'true'
            }, uCTBtn.ownerDocument));
            uCTBtn._getClosedTabCount = HistoryMenu.prototype._getClosedTabCount;
            uCTBtn.populateUndoSubmenu = eval('(' + HistoryMenu.prototype.populateUndoSubmenu.toString().replace('window', 'this.ownerGlobal').replace(/\.undoTabMenu/g, '').replace(/\.menupopup/g, '.firstChild') + ')');
        }
    });
    }
              
              
    document.insertBefore(document.createProcessingInstruction(
        'xml-stylesheet', 'type="text/css" href="data:text/css;utf-8,' + encodeURIComponent('\
            #undoclosetab-button menuitem {max-width: 240px;}\
            #undoclosetab-button .toolbarbutton-icon {list-style-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAABuUlEQVRIib2VL08DQRDFKxANqahErijJte/N5pI2oQlNuA+AqEBUkHAJAkMIAhJERYNBICr4ABUIFKlEIBA4DAJRgUBUIJpgKioqitkry8H9CxcmmeQutzu/eTO5mULhP4xkA0Ar6ruIOCR3SZ4A6JrnRhaAR3JqQ5RSRQDHJMckFxE+JtlzXbccCwDQMRemAFpaa5J8jQkc9ncRaccBfOvw1HjwPhORvjnTAFAB0BGRfkjdXEQOo2rs/5YZgIGIbEUlJiKOAc3MnQ8Ae0kKlvUFsBZb2y9Qm+Tc3Jv86AnJo4ja3lar1fU0EJKXlvLz8MdeTAOHnuetJAFc1y1bPZlkASwAXKVU0bPuuN/ojuOoOE+jAsCOBfDTJJXJarXahqX8NHeA+UEDBd3cASJyYCnYzx0AYBAAtNbNvINvknwxgKd6vb6aK4DkfZB95EyysimJyBmAUprgZkcEwe+SDq8FUgG8kfSizppF9Gg1dpI4vwBUSI7sMUzy2YzsjvELkkNrwAVjfjuN4mCu3GRYOCOtNVMFD6lpkbwOLaDlIiL5AMBPM0ZiTSlVNPX2SHpa66ZSqvinoHnZJ3jLDwknYoRNAAAAAElFTkSuQmCC")}\
    ') + '"'), document.documentElement);
                            
    function $C(name, attr, doc) {
        var el = (doc || document).createXULElement(name);
        if (attr) Object.keys(attr).forEach(function(n) { return el.setAttribute(n, attr[n]);});
        return el;
    }
})();
2022-11-06 09:01
写私信
1楼#
不懂,扩展不能替代么?