阅读:4035回复:4
求个UC脚本,自动关闭下载弹出的空白页,之前一直在用的失效了..
RT..
之前用的脚本 // ==UserScript== // @name closeBlankTabOnCloseDownloadDialog.uc.js // @namespace http://space.geocities.yahoo.co.jp/gl/alice0775 // @description ダウンロードをした際に、空白のタブを自動で閉じる // @include main // @compatibility Firefox 2.0 3.0 // @author Alice0775 // @version 2009/04/29 00:00 空白タブを削除する前にもう一度チェック // @Note need 000-windowhook.uc.js // ==/UserScript== // @version 2008/04/15 12:00 メインウインドウが複数合った場合に動作しないのを修正 // @version 2008/03/29 12:00 trunkで保存できない場合があったのでWindowHookにした if(!('TM_init' in window)) WindowHook.register("chrome://mozapps/content/downloads/unknownContentType.xul", function(aWindow) { aWindow.addEventListener('unload',closeBlankTabOnCloseDownloadDialog,false); function closeBlankTabOnCloseDownloadDialog(event){ var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"] .getService(Components.interfaces.nsIWindowMediator); var browserWindow = wm.getMostRecentWindow("navigator:browser"); //ブラウザ var tab = browserWindow.gBrowser.mTabs; var max = tab.length; if(max <= 1) return; for(var i = max -1 ;i > -1 ; i--){ if(tab[i].linkedBrowser.contentDocument.URL != 'about:blank') continue; browserWindow.setTimeout(function(aTab){ if(aTab.linkedBrowser.contentDocument.URL == 'about:blank') browserWindow.gBrowser.removeTab(aTab);},500,tab[i]); return; } } } ); /* if(!('TM_init' in window)) WindowHook.register("chrome://mozapps/content/downloads/downloads.xul", function(aWindow) { aWindow.addEventListener('unload',closeBlankTabOnCloseDownloadDialog,false); function closeBlankTabOnCloseDownloadDialog(event){ var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"] .getService(Components.interfaces.nsIWindowMediator); var browserWindow = wm.getMostRecentWindow("navigator:browser"); //ブラウザ var tab = browserWindow.gBrowser.mTabs; var max = tab.length; if(max <= 1) return; for(var i = max -1 ;i > -1 ; i--){ if(tab[i].linkedBrowser.contentDocument.URL != 'about:blank')continue; browserWindow.setTimeout(function(aTab){browserWindow.gBrowser.removeTab(aTab);},500,tab[i]); return; } } } ); window.addEventListener('unload',closeBlankTabOnCloseDownloadDialog,false); function closeBlankTabOnCloseDownloadDialog(event){ //ブラウザ var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"] .getService(Components.interfaces.nsIWindowMediator); var browserWindow = wm.getMostRecentWindow("navigator:browser"); var tab = browserWindow.getBrowser().mTabs; var max = tab.length; if(max <= 1) return; for(var i = max -1 ;i > -1 ; i--){ if(tab[i].linkedBrowser.contentDocument.URL != 'about:blank')continue; browserWindow.getBrowser().removeTab(tab[i]); return; } } */ |
|
1楼#
发布于:2012-06-04 04:09
请问下按住ctrl+鼠标左键点击。弹出来的下载页面是否有效呢。怎么我试了没有效果呢
|
|
2楼#
发布于:2012-06-04 04:09
感谢qdfk 和LZ
抱走了 |
|
3楼#
发布于:2012-06-04 04:09
非常感谢/.
收下了 |
|
4楼#
发布于:2012-06-04 04:09
楼主可以关注Alice0775在github的更新
// ==UserScript== // @name closeBlankTabOnCloseDownloadDialog.uc.js // @namespace http://space.geocities.yahoo.co.jp/gl/alice0775 // @description ダウンロードをした際に、空白のタブを自動で閉じる // @include main // @author Alice0775 // @compatibility 4.0b8pre // @version 2012/01/31 11:00 by Alice0775 12.0a1 about:newtab // @version 2010/10/12 11:00 by Alice0775 4.0b8pre // @version 2009/04/29 00:00 空白タブを削除する前にもう一度チェック // @Note need 000-windowhook.uc.js // ==/UserScript== // @version 2008/04/15 12:00 メインウインドウが複数合った場合に動作しないのを修正 // @version 2008/03/29 12:00 trunkで保存できない場合があったのでWindowHookにした if(!('TM_init' in window)) WindowHook.register("chrome://mozapps/content/downloads/unknownContentType.xul", function(aWindow) { aWindow.addEventListener('unload',closeBlankTabOnCloseDownloadDialog,false); function closeBlankTabOnCloseDownloadDialog(event) { var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"] .getService(Components.interfaces.nsIWindowMediator); var browserWindow = wm.getMostRecentWindow("navigator:browser"); //ブラウザ var tab = browserWindow.gBrowser.mTabs; var max = tab.length; if(max <= 1) return; for(var i = max -1 ;i > -1 ; i--) { var aTab = tab[i]; if ( aTab.hasAttribute('busy') || aTab.linkedBrowser.docShell.busyFlags || aTab.linkedBrowser.docShell.restoringDocument || !aTab.linkedBrowser.webNavigation.currentURI || ("isBlankPageURL" in window ? !isBlankPageURL(aTab.linkedBrowser.currentURI.spec) : aTab.linkedBrowser.currentURI.spec != "about:blank") || aTab.getAttribute('ontap') == 'true') { continue; } aTab.ownerDocument.defaultView.gBrowser.removeTab(aTab); return; } } } ); 还有个 // ==UserScript== // @name closeBlankTabOnCloseGreasemonkeyInstall.uc.js // @namespace http://space.geocities.yahoo.co.jp/gl/alice0775 // @description ダウンロードをした際に、空白のタブを自動で閉じる // @include chrome://greasemonkey/content/install.xul // @author Alice0775 // @compatibility 4.0b8pre // @version 2012/01/31 11:00 by Alice0775 12.0a1 about:newtab // @version 2010/10/12 11:00 by Alice0775 4.0b8pre // @version 2009/04/29 00:00 空白タブを削除する前にもう一度チェック // ==/UserScript== // @Note // @version 2007/07/26 03:00 (function() { //ブラウザ const WINMAN = Components.classes['@mozilla.org/appshell/window-mediator;1'] .getService(Components.interfaces.nsIWindowMediator); if('tablib' in WINMAN.getMostRecentWindow(null)) return; function closeBlankTabOnCloseGreasemonkeyInstall(event){ //ブラウザ var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"] .getService(Components.interfaces.nsIWindowMediator); var browserWindow = wm.getMostRecentWindow("navigator:browser"); var tab = browserWindow.getBrowser().mTabs; var max = tab.length; if(max <= 1) return; for(var i = max -1 ;i > -1 ; i--) { var aTab = tab[i]; if ( aTab.hasAttribute('busy') || aTab.linkedBrowser.docShell.busyFlags || aTab.linkedBrowser.docShell.restoringDocument || !aTab.linkedBrowser.webNavigation.currentURI || ("isBlankPageURL" in window ? !isBlankPageURL(aTab.linkedBrowser.currentURI.spec) : aTab.linkedBrowser.currentURI.spec != "about:blank") || aTab.getAttribute('ontap') == 'true') { continue; } aTab.ownerDocument.defaultView.gBrowser.removeTab(aTab); return; } window.removeEventListener('unload',function(event){closeBlankTabOnCloseGreasemonkeyInstall(event);},false); } window.addEventListener('unload',function(event){closeBlankTabOnCloseGreasemonkeyInstall(event);},false); })(); |
|