bunda1
Можно вас попросить сделать вариант кнопки Сохранить ярлык страницы на ...( Firefox ) без сохранения иконки сайта и без всплывающего окна.
custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3E%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u043D%u0430%20...%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEhIAAAEAIACABQAAFgAAACgAAAASAAAAJAAAAAEAIAAAAAAAWAUAAAAAAAAAAAAAAAAAAAAAAAD+/vL/5vP//9v2///p+Pb/+PTv//nx+P/19PX/+Pbv//z08f/4+O7/+fb0//v29f/1+O7/5Pr0/976///i7///9/b/////8//i7Ov/h5zF/2GEs/+LpLH/0dHW/9fO3v/O0dj/1NTQ/9zR0v/O1Mz/0tHS/9TO1P/N1tb/nrzE/22PtP9xiL7/s7nX//n59P/T5vb/V3i+/zNhrv9tkbb/4en9/+rn///j6/X/5+3t/+7r7//i7+j/5unv/+ji8//i7P7/mbvc/z9rsP8+YrP/jaLO//L8///K4v3/UnrU/zFqyv9kkMT/3er+/+vn///m7PP/5u7r/+rq7f/h8OX/6Ors/+rg9P/f5f//lLbn/zpsyP88ac3/iKXa/+z+///N4///Unvb/yxo0v9hkcz/4Oz///Ps/P/w8O3/7fLn//Dv7//r9+f/8Ozo//Xk8f/o6f//l7fr/zZr0v86adb/iKXc/+/+/v/R4/7/VHvb/ytq1f9hks7/4er///zu9//++uz/+Pno//Lv7v/t9eT/+vHo///r7v/x7Pz/mbrr/zZu1P82Z9X/jKXb//f++//W5v3/VX/a/yls2f9dk9D/4ez////z9v/69eb/9Pfo/+/x9f/r9O3//fLs///o5v/18fn/msDq/zJx1f81a9n/jqbd//z++v/U6P3/UoPc/yRw3/9Vldb/2uv////0/P/69+v/8vry/+Pt/f/g7/f/+vL1///w7f/2+vz/kMDp/yx11/8wbuD/jKbk//z6/f/T6/z/UYXc/yNx4v9Wldj/2+7///Xy+//X3+D/1ufu/+Tz///g9P//29vs/+re4f/y/P3/jsPq/yl32/8wcOP/jabl//n5///S6Pf/V4rZ/zFz3/91mtn/6fD6/+v7//+RvN//bpLH/9Pg/v/F3Pj/c4e2/8PF3f/1/P//lsPq/zV64P9Ec9r/marZ//H8///L5vz/Tork/yhy7f9smeP/4fD8/+H7//+Bue//N2/D/2eO3f9Zi9f/Pmi1/7fF7f/y/f//kMLw/yt58P88c+j/kKvh/+X8///O5/z/To3o/yF29f9imuv/3e/9/+X4//+Lv/P/LXPY/ylx4v8ict//M23N/7fI8v/2/v//kcTy/yd89/81dfP/ja3p/+f8///h6vf/YpTd/zF97P9rnub/6vP6//v9+f+jxOv/M3nb/xt19f8YePP/NXPV/8HK6f////f/pcro/zaB7v9Be+3/nbLg//j++v/n6vb/cJjW/z6D4f91peX/7PP5////+v+zx+f/PH/e/xZ5/f8Wevn/NnfY/8bO6f///+//sM3j/0OG6P9NgOj/orPb//r98//S4Pr/bZnf/0SM5f9qpOf/2O3///r///+txu//PIPm/xZ+//8Yffz/NXvm/7fL8/////z/q9Ht/0OJ7v9QhvH/mLLl/+T4/v/E3P//apjg/0yO3P9tquf/zfD//+T1//+ow/T/Robh/yuI+v8yiPL/OX3j/6bH9v/r////oM7x/0iK6v9Thej/krHm/9P4///U4///kqzZ/3qhxf+Qttf/1e39/+jw/f/AyOv/e5vQ/2WY1f9smMv/aZLU/7bN9f/x/v3/tNPm/3Kc2/+Emtz/s8De/+D9///z8f//6ev3/+Xu7v/g7O3/7fH5//Lr9v/x6fL/5ebx/9zr9f/i6uz/2OP3/+Tp+f/08+n/5/Ls/9jm/P/r5vz/9u/0//f/+f8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5B//%20%20%u041D%u0430%u0441%u0442%u0440%u043E%u0439%u043A%u0430%20%u0444%u0443%u043D%u043A%u0446%u0438%u0439%20%u043A%u043B%u0438%u043A%u043E%u0432%20%u043C%u044B%u0448%u0438%20%u0434%u043B%u044F%20%u043A%u043D%u043E%u043F%u043A%u0438%20.........................................................%0Athis.leftclick%20%3D%20function%28%29%20%7B%20saveShortcuts%28%27true%27%29%20%7D%3B%20//%20%u041B%u041A%u041C%20%0A%0Athis.leftDclick%20%3D%20function%28%29%20%7B%20saveShortcuts%28%29%20%7D%3B%20//%20%u0434%u0432%u043E%u0439%u043D%u043E%u0439%20%u041B%u041A%u041C%20%0A%0Athis.setAttribute%28%27onclick%27%2C%20%27gQuot%28event%2C%20this%29%27%29%3B%0Athis.setAttribute%28%27ondblclick%27%2C%20%27gQuot%28event%2C%20this%29%27%29%3B%0A%0A%0A%0A//%20%u041E%u0431%u044A%u044F%u0432%u043B%u044F%u0435%u043C%20%u043D%u0430%u0441%u0442%u0440%u043E%u0439%u043A%u0438%20%u0438%20%u043F%u0435%u0440%u0435%u043C%u0435%u043D%u043D%u044B%u0435%20%u0434%u043B%u044F%20%u044D%u0442%u043E%u0439%20%u0432%u043A%u043B%u0430%u0434%u043A%u0438%20......................................................%0Avar%20addSiteNameToShortcuts%20%3D%20true%3B%20//%20%3D%3E%20%u0434%u043E%u0431%u0430%u0432%u043B%u044F%u0442%u044C%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%20%u0434%u043E%u043C%u0435%u043D%u0430%20%u043A%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u044E%20%u044F%u0440%u043B%u044B%u043A%u0430%0A%0Avar%20button%20%3D%20this%3B%0Aconst%20file%20%3D%20Components.classes%5B%22@mozilla.org/file/local%3B1%22%5D.createInstance%28Components.interfaces.nsILocalFile%29%3B%0Aconst%20iosService%20%3D%20Components.classes%5B%22@mozilla.org/network/io-service%3B1%22%5D.getService%28Components.interfaces.nsIIOService%29%3B%0Aconst%20alertsService%20%3D%20Components.classes%5B%22@mozilla.org/alerts-service%3B1%22%5D.getService%28Components.interfaces.nsIAlertsService%29%3B%0Aconst%20directoryService%20%3D%20Components.classes%5B%22@mozilla.org/file/directory_service%3B1%22%5D.getService%28Components.interfaces.nsIProperties%29%3B%0Aconst%20foStream%20%3D%20Components.classes%5B%22@mozilla.org/network/file-output-stream%3B1%22%5D.createInstance%28Components.interfaces.nsIFileOutputStream%29%3B%0A%0A%20%0A%20%0A//%20%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u0432%20%u0443%u043A%u0430%u0437%u0430%u043D%u043D%u0443%u044E%20%u043F%u0430%u043F%u043A%u0443%20%u0438%u043B%u0438%20%u0432%20%u043F%u043E%u0441%u043B%u0435%u0434%u043D%u044E%u044E%20%u043F%u0430%u043F%u043A%u0443%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%20....................%0Afunction%20saveShortcuts%28%20saveAs%20%29%20%7B%0A%20%20%0A%20%20%20%20%20//%20%u0431%u043B%u043E%u043A%u0438%u0440%u0443%u0435%u043C%20%u0441%u043E%u0437%u0434%u0430%u043D%u0438%u0435%20%u044F%u0440%u043B%u044B%u043A%u043E%u0432%20%u0434%u043B%u044F%20%u0432%u043D%u0443%u0442%u0440%u0435%u043D%u044B%u0445%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%20FF%20....%20%20%0A%20%20%20%20%20if%20%28%20%21getDocTitle%28%29%20%29%20%7B%20%20%20%0A%20%20%20%20%20%20%20%20%20%20alertsService.showAlertNotification%28%22chrome%3A//global/skin/icons/error-16.png%22%2C%20button.label%2C%20%22%u041D%u0435%20%u043F%u043E%u0434%u0434%u0435%u0440%u0436%u0438%u0432%u0430%u0435%u0442%u0441%u044F%22%2C%20false%2C%20%22%22%2C%20null%2C%20%22%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20var%20pref%20%3D%20%22Shortcuts.pathToSaveShortcuts%22%3B%0A%20%20%20%20%20var%20fileName%20%3D%20saveAs%20%3F%20pathToFile%28%20pref%20%29%20%3A%20false%3B%0A%20%20%20%20%20if%20%28%20saveAs%20%26%26%20%21fileName%20%29%20return%3B%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%0A%20%20%20%20%20/*%20%u043F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u043F%u0443%u0442%u044C%20%u0434%u043B%u044F%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%20%u0438%u0437%20%27about%3Aconfig%27%2C%20%u0434%u043E%u0431%u0430%u0432%u044B%u0442%u044A%20%u0437%u0430%u0433%u043E%u043B%u043E%u0432%u043E%u043A%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u0438%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%20%u0434%u043E%u043C%u0435%u043D%u0430%20%0A%20%20%20%20%20%20%20%20%u0438%u043B%u0438%20%u0443%u0441%u0442%u0430%u043D%u043E%u0432%u043B%u0435%u043D%u043D%u043E%u0435%20%u0432%u0440%u0443%u0447%u043D%u0443%u044E%20%u0438%u043C%u044F%20%u0444%u0430%u0439%u043B%u0430%20%u0438%20%u0441%u043E%u0437%u0434%u0430%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20....*/%0A%20%20%20%20%20var%20pathToFolder%20%3D%20Application.prefs.getValue%28%20pref%2C%200%29%3B%0A%20%20%20%20%20var%20siteName%20%3D%20addSiteNameToShortcuts%20%3F%20getSiteName%28%29%20%3A%20%22%22%3B%0A%20%20%20%20%20var%20shortcutName%20%3D%20%28%21%21fileName%29%20%3F%20fileName%20%3A%20%28%20siteName%20+%20getDocTitle%28%29%20+%20getCurrentTopicNumber%28%29%20%29%3B%0A%20%20%20%20%20var%20path%20%3D%20pathToFolder%20+%20shortcutName%20+%20%22.url%22%3B%20%20%20%20%20%0A%20%20%20%20%20file.initWithPath%28%20path%20%29%3B%20%0A%20%20%20%20%0A%20%20%20%20%20//%20%u0430%u0434%u0440%u0435%u0441%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u0432%20UTF-8%20%u0435%u0441%u043B%u0438%20%u044D%u0442%u043E%20%u043F%u0440%u043E%u0442%u043E%u043A%u043E%u043B%20%27file%27%20%u0438%u043B%u0438%20%u0432%20%27Punycode%27%20%u0435%u0441%u043B%u0438%20%u044D%u0442%u043E%20.%u0440%u0444%20%u0434%u043E%u043C%u0435%u043D%20....%20%0A%20%20%20%20%20var%20url%20%3D%20content.document.location%3B%20%20%20%0A%20%20%20%20%20if%20%28%20url.protocol%20%3D%3D%20%27file%3A%27%20%29%20var%20url%20%3D%20convertFromUnicode%28%22UTF-8%22%2C%20url%29%3B%20%20%20%0A%20%20%20%20%20else%20if%20%28%20url.host.slice%28-3%29%20%3D%3D%20%27.%u0440%u0444%27%29%20var%20url%20%3D%20Services.io.newURI%28url%2C%20null%2C%20null%29.asciiSpec%3B%0A%20%20%20%20%20%0A%20%20%20%20%20//%20%u0442%u0435%u043A%u0441%u0442%20%u044F%u0440%u043B%u044B%u043A%u0430%20%u0438%u0437%20%u0430%u0434%u0440%u0435%u0441%u0430%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20....%20%20%20%20%20%0A%20%20%20%20%20var%20data%20%3D%20%22%5BInternetShortcut%5D%22%20+%20%22%5Cr%5Cn%22%20+%20%22URL%3D%22%20+%20url%3B%20%20%0A%0A%20%20%20%20%20//%20%u0437%u0430%u043F%u0438%u0441%u0430%u0442%u044C%20%u0442%u0435%u043A%u0441%u0442%20%u0432%20%u044F%u0440%u043B%u044B%u043A%20....%0A%20%20%20%20%20foStream.init%28file%2C%200x02%7C0x08%7C0x20%2C%200666%2C%200%29%3B%0A%20%20%20%20%20foStream.write%28data%2C%20data.length%29%3B%0A%20%20%20%20%20foStream.close%28%29%3B%0A%0A%20%20%20%20%20//%20%u043A%u043D%u043E%u043F%u043A%u0430%20%u043C%u0438%u0433%u0430%u0435%u0442%20....%0A%20%20%20%20%20if%20%28%20saveAs%20%29%20return%3B%0A%20%20%20%20%20button.style.filter%20%3D%20%27url%28%22chrome%3A//mozapps/skin/extensions/extensions.svg%23greyscale%22%29%27%3B%0A%20%20%20%20%20setTimeout%28function%28%29%20%7B%20button.style.filter%20%3D%20%27%27%20%7D%2C%20500%29%3B%20%20%20%20%0A%7D%3B%0A%0A%0A%0A//%20%u0423%u0441%u0442%u0430%u043D%u043E%u0432%u043A%u0430%20%u043F%u0443%u0442%u0438%20%u0438%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u044F%20%u0434%u043B%u044F%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%20%u044F%u0440%u043B%u044B%u043A%u0430%20%u0447%u0435%u0440%u0435%u0437%20%u0434%u0438%u0430%u043B%u043E%u0433%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%2C%20%u0435%u0441%u043B%u0438%20%u043E%u0442%u043C%u0435%u043D%u0430%20%u043E%u0442%u0434%u0430%u0441%u0442%20%27false%27%20..............%0Afunction%20pathToFile%28%20pref%20%29%20%7B%20%20%20%20%20%0A%0A%20%20%20%20%20//%20%u043F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u043F%u0440%u0435%u0434%u044B%u0434%u0443%u0449%u0438%u0439%20%u043F%u0443%u0442%u044C%20%u0434%u043B%u044F%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%20%u0438%u0437%20%27about%3Aconfig%27%20%u0438%u043B%u0438%20%u0434%u0438%u0441%u043A%20C%3A%20....%0A%20%20%20%20%20var%20pathToFile%20%3D%20Application.prefs.getValue%28%20pref%2C%200%20%29%3B%0A%20%20%20%20%20var%20pathToFile%20%3D%20%28%20pathToFile%20%3D%3D%200%20%29%3F%20%22C%3A%5C%5C%22%3A%20pathToFile%3B%0A%0A%20%20%20%20%20//%20%u0434%u0438%u0430%u043B%u043E%u0433%20%u0441%u043E%u0437%u0434%u0430%u043D%u0438%u044F%20%u0438%20%u0443%u0441%u0442%u0430%u043D%u043E%u0432%u043A%u0438%20%u043F%u0443%u0442%u0438%20....%20%20%20%20%20%0A%20%20%20%20%20var%20fp%20%3D%20Components.classes%5B%22@mozilla.org/filepicker%3B1%22%5D.createInstance%28Components.interfaces.nsIFilePicker%29%3B%0A%20%20%20%20%20fp.init%28window%2C%20%22%u0423%u043A%u0430%u0436%u0438%u0442%u0435%20%u043F%u0443%u0442%u044C%20%u043A%20%u0444%u0430%u0439%u043B%u0443%20%u0438%20%u0435%u0433%u043E%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%21%22%2C%20fp.modeSave%29%3B%0A%20%20%20%20%20fp.appendFilters%28%20fp.filterAll%20%29%3B%0A%20%20%20%20%20fp.defaultString%20%3D%20getSiteName%28%29%20+%20getDocTitle%28%29%20+%20getCurrentTopicNumber%28%29%3B%0A%20%20%20%20%20file.initWithPath%28%20pathToFile%20%29%3B%0A%20%20%20%20%20fp.displayDirectory%20%3D%20file%3B%0A%20%20%20%20%20%0A%20%20%20%20%20if%20%28%20fp.show%28%29%20%3D%3D%20fp.returnCancel%20%29%20return%20false%3B%0A%20%20%20%20%20%20%20%20%20%20//%20%u0443%u0431%u0440%u0430%u0442%u044C%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%20%u0444%u0430%u0439%u043B%u0430%20%u0438%u0437%20%u043F%u0443%u0442%u0438%20%u043A%20%u0444%u0430%u0439%u043B%u0443%20%u0438%20%u0437%u0430%u043F%u0438%u0441%u0430%u0442%u044C%20%u043F%u0443%u0442%u044C%20%u0432%20%27about%3Aconfig%27%20....%0A%20%20%20%20%20%20%20%20%20%20var%20filePath%20%3D%20fp.file.path.toString%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20var%20fileName%20%3D%20fp.file.leafName.toString%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20Application.prefs.setValue%28%20pref%2C%20filePath.replace%28%20fileName%2C%20%22%22%20%29%20%29%3B%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20return%20fileName%3B%0A%7D%3B%0A%0A%0A%0A//%20%u041F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%20%u0434%u043E%u043C%u0435%u043D%u0430%20%u0441%20%u0437%u0430%u0433%u043B%u0430%u0432%u043D%u044B%u043C%20%u043F%u0435%u0440%u0432%u044B%u043C%20%u0441%u0438%u043C%u0432%u043E%u043B%u043E%u043C%20%u0438%20%u0431%u0435%u0437%20%u043F%u0440%u0438%u0441%u0442%u0430%u0432%u043E%u043A%28%20%u0442%u0438%u043F%u0430%20.ru%20%u0438%20.com%20%29%20..........%0Afunction%20getSiteName%28%29%20%7B%0A%20%20%20%20%20try%20%7B%20var%20domain%20%3D%20Components.classes%5B%27@mozilla.org/network/effective-tld-service%3B1%27%5D.getService%28Components.interfaces.nsIEffectiveTLDService%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.getBaseDomain%28%20content.document.documentURIObject%20%29%20%7D%0A%20%20%20%20%20catch%28e%29%20%7B%20return%20%22%22%20%7D%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%0A%20%20%20%20%20try%20%7B%20%0A%20%20%20%20%20%20%20%20%20var%20num%20%3D%20domain.length%3B%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20if%20%28%20domain.slice%28num-3%2C%20num-2%29%20%3D%3D%20%27.%27%20%29%20var%20siteName%20%3D%20domain.slice%280%2C%20num-3%29%3B%20%0A%20%20%20%20%20%20%20%20%20if%20%28%20domain.slice%28num-4%2C%20num-3%29%20%3D%3D%20%27.%27%20%29%20var%20siteName%20%3D%20domain.slice%280%2C%20num-4%29%3B%0A%20%20%20%20%20%20%20%20%20var%20siteName%20%3D%20siteName.charAt%280%29.toUpperCase%28%29%20+%20siteName.slice%281%29%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20catch%28e%29%20%7B%20return%20%22%22%20%7D%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20return%20siteName%20+%20%22%20%22%3B%20%0A%7D%3B%0A%0A%0A%0A//%20%u041F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u043D%u043E%u043C%u0435%u0440%20%u0442%u043E%u043F%u0438%u043A%u0430%20%u0438%u0437%20%u0442%u0435%u043A%u0443%u0449%u0435%u0439%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u0435%u0441%u043B%u0438%20%u043E%u043D%20%u0435%u0441%u0442%u044C%20%u0438%u043D%u0430%u0447%u0435%20%u043D%u0438%u0447%u0435%u0433%u043E%20............................%0Afunction%20getCurrentTopicNumber%28%29%20%7B%0A%20%20%20%20%20var%20currUrl%20%3D%20content.location.toString%28%29%3B%0A%20%20%20%20%20var%20array%20%3D%20currUrl.split%28%27%3D%27%29%3B%0A%20%20%20%20%20var%20num%20%3D%20array.length%0A%0A%20%20%20%20%20if%20%28%20num%20%3D%3D%201%20%29%20return%20%27%27%3B%0A%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20var%20val%20%3D%20%28%20%28%28num%20%3E%202%29%3F%20%28%27%20%20%27%20+%20array%5Bnum-2%5D%29%3A%20%27%27%29%20+%20%27%20-%20%27%20+%20array%5Bnum-1%5D%29%3B%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20//%20%u0437%u0430%u043C%u0435%u043D%u0438%u0442%u044C%20%u043D%u0435%u0434%u043E%u043F%u0443%u0441%u0442%u0438%u043C%u044B%u0435%20%u0441%u0438%u043C%u0432%u043E%u043B%u044B%20%u0438%20%u0443%u0434%u0430%u043B%u0438%u0442%u044C%20%u043B%u0438%u0448%u043D%u0438%u0435%20%u043F%u0440%u043E%u0431%u0435%u043B%u044B%20%0A%20%20%20%20%20%20%20%20%20%20var%20val%20%3D%20val.replace%28/%5B%3A.%5C%5C%5C/%3C%3E%3F*%7C%22%5D+/g%2C%20%22%20%22%29.replace%28/%5Cs%5Cs+/g%2C%20%22%20%22%29%3B%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20return%20val%3B%0A%7D%3B%0A%0A%0A%0A/*%20%u041F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u0437%u0430%u0433%u043E%u043B%u043E%u0432%u043A%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u0438%u043B%u0438%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%20%u0434%u043E%u043C%u0435%u043D%u0430%20%u0435%u0441%u043B%u0438%20%u0437%u0430%u0433%u043E%u043B%u043E%u0432%u043A%u0430%20%u0443%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u043D%u0435%u0442%0A%20%20%20%u0438%u043B%u0438%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%20%u0432%u043A%u043B%u0430%u0434%u043A%u0438%20%u0435%u0441%u043B%u0438%20%u0434%u043E%u043C%u0435%u043D%u0430%20%u043D%u0435%u0442%20............................................................%20*/%0Afunction%20getDocTitle%28%29%20%7B%0A%20%20%20%20%20var%20protocol%20%3D%20content.location.protocol%3B%0A%20%20%20%20%20if%20%28%20%5B%22about%3A%22%2C%20%22chrome%3A%22%2C%20%22jar%3A%22%2C%20%22data%3A%22%5D.indexOf%28%20protocol%20%29%20%21%3D%3D%20-1%20%29%20return%20false%3B%20%20%0A%20%20%20%20%20%20%20%20%20%20var%20docTitle%20%3D%20content.document.title%20%7C%7C%20content.document.domain%20%7C%7C%20gBrowser.mCurrentTab.label%3B%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20//%20%u0437%u0430%u043C%u0435%u043D%u0438%u0442%u044C%20%u043D%u0435%u0434%u043E%u043F%u0443%u0441%u0442%u0438%u043C%u044B%u0435%20%u0441%u0438%u043C%u0432%u043E%u043B%u044B%20%u0438%20%u0443%u0434%u0430%u043B%u0438%u0442%u044C%20%u043B%u0438%u0448%u043D%u0438%u0435%20%u043F%u0440%u043E%u0431%u0435%u043B%u044B%20%0A%20%20%20%20%20%20%20%20%20%20var%20docTitle%20%3D%20docTitle.replace%28/%5B%3A.%5C%5C%5C/%3C%3E%3F*%7C%22%5D+/g%2C%20%22%20%22%29%0A%20%20%20%20%20%20%20%20%20%20var%20docTitle%20%3D%20docTitle.replace%28/%5Cs%5Cs+/g%2C%20%22%20%22%29%3B%20%0A%0A%20%20%20%20%20%20%20%20%20%20return%20docTitle.substring%280%2C%2050%29%3B%0A%7D%3B%0A%0A%0A%0A//%20%u041F%u043E%u0434%u0441%u043A%u0430%u0437%u043A%u0430%20%u043A%u043D%u043E%u043F%u043A%u0438%20..............................................................................%0Athis.tooltipText%20%3D%20%22%u041B%3A%20%20%20%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u043D%u0430%20...%5Cn%u0414%u041B%3A%20%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u0431%u0435%u0437%20%u0437%u0430%u043F%u0440%u043E%u0441%u0430%20%u043D%u0430%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u0435%22%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*Code*/%0A%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E
Отсутствует
Отсутствует
3 - поиск по текущему сайту в google
Вместо неё можно использовать Search in Website+
Отсутствует
bunda1
Поправте пожалста кнопку
Green style
Отсутствует
Можете починить пару кнопок:
1 - открывет в боковой панели окно загрузок
Добавлено 13-04-2013 14:12:47
Можете починить пару кнопок:
2 - открывает в новой вкладке окно допонений[s]
custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3E%u0414%u043E%u043F%u043E%u043B%u043D%u0435%u043D%u0438%u044F%20%u0432%20%u043D%u043E%u0432%u043E%u0439%20%u0432%u043A%u043B%u0430%u0434%u043A%u0435%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bchrome%3A//mozapps/skin/extensions/extensionGeneric-16.png%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5BgBrowser.loadOneTab%28%22chrome%3A//mozapps/content/extensions/extensions.xul%22%2C%20null%2C%20null%2C%20null%2C%20false%2C%20false%29%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E
Отредактировано bunda1 (13-04-2013 14:12:47)
Отсутствует
Перестала работать кнопка Save http://forum.mozilla-russia.org/viewtop … 40#p493040, пожалуйста, поправьте.
Отредактировано dmitrydvk (14-04-2013 02:07:04)
Отсутствует
okkamas_knife
Советую не перемещать а создавать нужные кнопки на статус-бар, так проще. Я сам так делаю и проблем нет.
Добавлено 14-04-2013 15:07:16
И все коды таких кнопок запихнуть в одну кнопку.
Добавлено 14-04-2013 15:16:39
Я тут попробовал твой код перемещения на SeaMonkey + открытия панели настроек + перезапуск и не наблюдаю этой проблемы.
Отредактировано bunda1 (14-04-2013 15:16:39)
Отсутствует
каким образом?
var node = document.getElementById("alertButton"); if ( node && node.parentNode ) node.parentNode.removeChild(node); // блокировать дублирование var offline = document.getElementById("offline-status"); var butt = document.createElementNS("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul", "toolbarbutton"); butt.setAttribute("id", "alertButton"); butt.setAttribute("image", "data:image/x-icon;base64,AAABAAEAEhIAAAEAIACABQAAFgAAACgAAAASAAAAJAAAAAEAIAAAAAAAWAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgEBAwEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAgEBAwAAAAACAQECAAAAAHdLNaSlZkbqkFY60ZNZO9aSWDrWkVY51o9VONaOVDfWjVI11oxSNdaMUDPWhkww0ZdYOupsQCykAAAAAAIBAQIAAAAAc0k1oNebe//0yrD/+djC/vjWv//418D/+Na///fWv//31r//99W///XTuv/11Lz/9tfA/u3Dqf/Jjm//Zz4qoAAAAAAAAAAAq2tL1vXMsf/w4c327di9++nStfvs1bn77Na7++zWu/vs1rv77NS5+/Tk0Pvt2L377NW4+/Ll0vbtxar/mFk61gAAAAAAAAAAl10/0Pvdxv/q07b71quB/9iuhP/VqX//06J0/9Khcf/SonL/z5pm/+7dzf/q1cH/1ah9/+zStPv22MP/hkww0AAAAAAAAAAAnF9C1vzcxv/kxaT70aBw/9mtg//euJX/6c+3/+zVv//s1sD/6tG5//r18P//////48Wo/+bHpvv22ML/i1Az1gAAAAAAAAAAnWBC1v3eyv/iwp/7ypFY/9qwiP/u3Mr/9+7k//jw6P/48Oj/9+/m//z69///////5862/+XHpvv42cT/jFE01gAAAAAAAAAAnmJE1v7hzv/fvZf7wX06/+LBof/27OP/z5dh/8mLTv/JjE//xIE+//Pl1v/05tn/zJJb/963jfv53cv/jVEz1gAAAAAAAAAAn2JE1v/i0f/dt477u28k/+PDo//47+j/w348/8qNUv/JjVH/xoZH/9+6l//VpXf/vnUw/963jvv53cv/jlM11gAAAAAAAAAAoGNF1v/j0f/duJD7u3Ao/+PDpf/48Oj/w4A//8qNU//JjFH/yYxR/8qOVP/KkFb/wX8+/922jfv63cv/j1Q21gAAAAAAAAAAoWVH1v/i0P/gwJ77w4FD/+bLsP/58uv/yo9X/9Cbaf/Pmmf/z5pn/86YZP/Qm2n/yY9Y/+G/m/v63Mr/kVU31gAAAAAAAAAAo2ZJ1v/hz//kyav7ypRf/+jRuv/58uz/0J9w/9Spfv/UqH3/1Kh9/9Wpfv/VqoD/z59v/+XJqfv53Mn/klc51gAAAAAAAAAApGhK1v/fzf/n0Lf70aR5/+3Zx//69fH/166I/9u3lP/btpP/27aT/9u2k//cuJX/1q2H/+fPtvv42sj/k1g71gAAAAAAAAAAoWZJ0P7fz//s3Mr72riZ/+bPuf/s3Mz/3L2e/97Ao//ewKP/3sCj/97Ao//ewaP/3Luf/+7cy/v428n/kFU50AAAAAAAAAAAunhY1vvTvf/u5Nv27+LU++rax/vq2MX77eDP++3fzvvt38777d/O++3fz/vt38778OLT+/Hm3Pb0zLT/p2dG1gAAAAAAAAAAflM+oOSpi//71L7//d/N/v7ey//+383//d3K//zdyv/83cn//NzJ//vcyP/72sf/+tzK/vTNt//XnH3/ckgzoAAAAAACAQECAAAAAINXQaS4d1fqomZK0aVoS9akZ0rWomZJ1qFkR9agZEbWnmNF1p1hRNacYELWl11A0apqSup4TDakAAAAAAIBAQIAAAAAAgEBAwEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAgEBAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="); butt.setAttribute("tooltiptext", "Л: Искать следущее \nС: Поиск текста из буфера \nП: Искать предыдущее"); offline.parentNode.insertBefore( butt, offline.nextSibling ); butt.addEventListener("click", function(e) { if ( e.button == 0 ) alert(e.button); if ( e.button == 2 ) alert(e.button); }, false);
Отсутствует
Код, позволяющий увеличить количество строк в новой панели загрузок: increaseDownloadCount.js
(побочный эффект от ковыряния в коде этого безобразия)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Ребята, подскажите, как организовать такую задумку:
нужно по дабл-ПКМ по картинке на сайте открыть эту картинку в новой активной вкладке и одновременно скопировать в буфер ссылку на нее.
Или вместо кликов можно предложить что другое.
Отсутствует
нужно по дабл-ПКМ по картинке на сайте открыть эту картинку в новой активной вкладке и одновременно скопировать в буфер ссылку на нее.
addEventListener("dblclick", function(e) { if ( e.button == 2 && e.target.nodeName == 'IMG' ) { gContextMenu.copyMediaLocation(); gBrowser.selectedTab = gBrowser.addTab( gClipboard.read() ); setTimeout(function() { document.getElementById("contentAreaContextMenu").hidePopup() }, 20); } }, false, gBrowser.mPanelContainer );
Отредактировано bunda1 (16-04-2013 19:18:45)
Отсутствует
Сcылку копирует, вкладку открывает, но пустую
У меня работает.
А нет, стало открывать две картинки.
Отредактировано Pony_Smile_Pack (16-04-2013 20:50:10)
Отсутствует
bunda1
Сcылку копирует, вкладку открывает, но пустую
И еще, контекстное меню все равно не скрывается...
Я проверял на Nigtly и все работает, не понятно. Может у тебя какое то расширение что то делает с новыми вкладками
Может так:
addEventListener("dblclick", function(e) { if ( e.button == 2 && e.target.nodeName == 'IMG' ) { gContextMenu.copyMediaLocation(); setTimeout(function() { gBrowser.selectedTab = gBrowser.addTab( gClipboard.read() ); document.getElementById("contentAreaContextMenu").hidePopup() }, 20); } }, false, gBrowser.mPanelContainer );
Отсутствует
Я проверял на Nigtly и все работает, не понятно. Может у тебя какое то расширение что то делает с новыми вкладками
даже не знаю что сказать
Может так:
а вот так работает! спасибо.
буду разбираться почему сразу не заработало.
Отсутствует
вот мелочь а фиг догадаешься!
Вообще-то все очень просто: берем *.xpi расширения и ищем «getButtonParameters»:
custombuttons-0.0.5.6pre5-20130226.xpi\components\CustomButtonsService.js
getButtonParameters: function (buttonLink) { ... param. initCode = button. getAttribute ("cb-init") || "";
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
А у меня пара вопросов.
1. Можно ли открывать (только открывать, сохранять мне не надо) в ФФ файлы MHT без установки расширений? Может через СВ как-то сделать?
2.
Inko7 пишет: нужно по дабл-ПКМ по картинке на сайте открыть эту картинку в новой активной вкладке и одновременно скопировать в буфер ссылку на нее.
Выделить кодКод:
addEventListener("dblclick", function(e) { if ( e.button == 2 && e.target.nodeName == 'IMG' ) { gContextMenu.copyMediaLocation(); gBrowser.selectedTab = gBrowser.addTab( gClipboard.read() ); setTimeout(function() { document.getElementById("contentAreaContextMenu").hidePopup() }, 20); } }, false, gBrowser.mPanelContainer );
А как бы сделать, чтобы только копировалась ссылка, а саму картинку мне открывать не надо. В том числе чтобы копировать и адрес картинки-ссылки.
Отредактировано Чайник (17-04-2013 12:51:17)
Отсутствует
villa7
В Firefox 20 и выше глобальные исключения для всех плагинов заменили на отдельные для каждого плагина.
Так что теперь можно только поставить по кнопке для каждого плагина.
См. отсюда и далее и примечания к кнопке.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
...2 есть же стандартные пункты контекстного меню которые делают требуемое.
Есть, но я хотел приделать копирование адреса картинки на мышиный жест, или как часть скрипта для Keyconfig
Ну и не получается у меня...
Отсутствует