>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Сustom Buttons http://forum.mozilla-russia.org/viewforum.php?id=34 >Как в Firegestures выполнить команду Copy Link Location? http://forum.mozilla-russia.org/viewtopic.php?id=55118 |
Чайник > 31-05-2012 14:41:51 |
Подскажите, как в Firegestures выполнить команду Copy Link Location? но он не работает. Что мне надо в идеале - это скопировать ссылку в буфер и открыть страницу с нужным мне адресом (не скопированная ссылка, адрес другой). |
brici > 31-05-2012 15:18:14 |
- Плиз, а чём удобство ? |
Чайник > 31-05-2012 15:41:47 |
brici пишет
Я это как-то проглядел Со второй частью ясно Выделить код Код:const URL = "http://myurl.com/"; const IN_NEW_TAB = true; const IN_BACKGROUND = false; if (IN_NEW_TAB) gBrowser.loadOneTab(URL, null, null, null, IN_BACKGROUND, false); else gBrowser.loadURI(URL); А вот как бы сюда прилепить ещё и копирование ссылки? |
brici > 31-05-2012 15:52:43 |
- Открыть неактивную ссылку в новой вкладке ? |
Чайник > 31-05-2012 15:58:22 |
brici пишет
Нет. |
bunda1 > 31-05-2012 20:20:57 |
Чайник пишет
Выделить код Код:var clipboard = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper); link = window._content.document.links; //... if (!(document.commandDispatcher.focusedWindow.getSelection() == '')) { //... for(i=0; i<link.length; ++i) { if (window._content.getSelection().containsNode(link[i], true)) { clipboard.copyString(link[i].href); } } } else {alert('Надо выделить ссылку на странице')}; //.............. gBrowser.loadOneTab("http://myurl.com/", null, null, null, false, false); |
Чайник > 31-05-2012 21:21:07 |
bunda1, это почти то самое что я думал. У меня есть жест "Открыть ссылку в ИЕ" и там как раз это реализовано Выделить код Код:const APP_PATH = "C:\\Program Files\\Internet Explorer\\iexplore.exe"; var srcNode = FireGestures.sourceNode; var linkURL = FireGestures.getLinkURL(srcNode); if (!linkURL) throw "Not on a link"; var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); file.initWithPath(APP_PATH); if (!file.exists()) { alert("File does not exist: " + APP_PATH); return; } var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); try { var args = [linkURL]; process.init(file); process.run(false, args, args.length); } catch (ex) { alert("Failed to execute: " + APP_PATH); } |
bunda1 > 31-05-2012 21:42:23 |
Выделить код Код:var clipboard = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper); //.... var srcNode = FireGestures.sourceNode; var linkURL = FireGestures.getLinkURL(srcNode); if (!linkURL) throw "Not on a link"; clipboard.copyString(linkURL); //.............. gBrowser.loadOneTab("http://myurl.com/", null, null, null, false, false); |
Чайник > 31-05-2012 22:23:08 |
bunda1, супер, самое то! Большое спасибо за помощь! |