Страницы: 1
Подскажите, как в Firegestures выполнить команду Copy Link Location?
Я создал новый жест с кодом
но он не работает. Что мне надо в идеале - это скопировать ссылку в буфер и открыть страницу с нужным мне адресом (не скопированная ссылка, адрес другой).
Отредактировано Чайник (31-05-2012 14:42:51)
Отсутствует
- Плиз, а чём удобство ?
В Firegestures есть схема Копировать адрес (Ссылка / Изображение / Фрейм / Страница). То есть скопировал адрес страницы в буфер жестом, и открыл в другом профиле или другом браузере другим жестом,- Open URL .
А Вы что хотите, и в чём удобство можно поконкретнее ?
Пизанская башня,- первое творение сюрреалистов.
Отсутствует
- Плиз, а чём удобство ? В Firegestures есть схема Копировать адрес (Ссылка / Изображение / Фрейм / Страница).
Я это как-то проглядел
Мне надо копировать не адрес страницы, а адрес обычной ссылки на странице (Copy Link Location). Ссылку там можно скопировать. Что мне и нужно.
Но я бы хотел, чтобы жест ещё и открыл вкладку с заранее определённым адресом, допустим http://myurl.com/. То есть чтоб я перешёл на эту вкладку, имея в буфере адрес ссылки.
Со второй частью ясно
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);
А вот как бы сюда прилепить ещё и копирование ссылки?
Отредактировано Чайник (31-05-2012 15:50:27)
Отсутствует
- Открыть неактивную ссылку в новой вкладке ?
Нет.
Скопировать ссылку - допустим, на этот мой пост. И открыть вкладку с заранее вписанным в код урлом http://myurl.com/ ну и перейти на неё. А в буфере при этом - ссылка на мой пост.
Отсутствует
Скопировать ссылку - допустим, на этот мой пост. И открыть вкладку с заранее вписанным в код урлом http://myurl.com/ ну и перейти на неё. А в буфере при этом - ссылка на мой пост.
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);
Отсутствует
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); }
Отсутствует
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);
Отсутствует
Страницы: 1