подскажите, плз, в стандартной новой вкладке FF можно ли как-то вместо одного из сайтов отобразить прогноз погоды? спасибо
Нашел чуть более простые и подходящие варианты:
1) просто кнопка + как добавить текст
2) https://addons.mozilla.org/en-US/firefox/addon/gmail-watcher/
3) https://addons.mozilla.org/ru/firefox/addon/livejournal-mod-counter/?src=search
Крошка Ру
спасибо! почти то, что нужно. но хотелось бы сделать расширение отдельным, без custom buttons...
Подскажите, плз - ищу простое расширение со следующими характеристиками:
1) одна(!) кнопка на тулбар;
2) на иконке кнопки - два счетчика (ну или один, записанный как x/y);
3) счетчики обновляются периодически (например, раз в 5 минут), считывая информацию с чужого сайта;
4) при нажатии на кнопку - переход на заданную страницу;
5) (желательно) при правом клике - контекстное меню с парой ссылок на другие страницы.
Хочу на основании такого расширения сделать своё, но писать с нуля всё как-то тяжеловато + хотелось бы, чтоб готовое расширение, взятое в качестве основы, уже соответствовало требованиями firefox (например, обновления счетчиков делались в асинхронном режиме).
Проверял через Firebug - запрос выглядит одинаково...
Тем не менее, попробовал:
var aReferrer = Services.io.newURI(url,null,null); persist.saveURI(fURI, null, aReferrer, null, "", file);
не помогло.
Если не поможет - поэкспериментируйте с содержимым параметра aExtraHeaders сигнатуры метода.
расскажите об этом чуть более подробно, пожалуйста
Использовал я следующий код для загрузки и сохранения файлов локально:
[code] var downloadCompleted = false;
// download the file first
var persist = Components.classes["@mozilla.org/embedding/browser/nsWebBrowserPersist;1"]
.createInstance(Components.interfaces.nsIWebBrowserPersist);
// get OS temp folder
var file = Components.classes["@mozilla.org/file/directory_service;1"]
.getService(Components.interfaces.nsIProperties)
.get("TmpD", Components.interfaces.nsIFile);
file.createUnique(Components.interfaces.nsIFile.NORMAL_FILE_TYPE, 0666);
var fURI = Services.io.newURI(url,null,null);
const nsIWBP = Components.interfaces.nsIWebBrowserPersist;
const flags = nsIWBP.PERSIST_FLAGS_REPLACE_EXISTING_FILES;
persist.persistFlags = flags | nsIWBP.PERSIST_FLAGS_FROM_CACHE;
persist.progressListener = {
onProgressChange: function(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTot
Я уже сделал свое расширение. Хотя, конечно, с процессом сохранения и загрузки пришлось повозиться.
Таак. Если использовать XMLHttpRequest:
// download the file first var req = new XMLHttpRequest(); req.open('GET', url, false); req.overrideMimeType('text/plain; charset=x-user-defined'); req.send(null); if (req.status != 200) return ''; // upload the file req.open("POST", "http://mysite.com/upload", false); req.setRequestHeader("Content-Length", req.responseText.length); req.sendAsBinary(req.responseText); // ТАК ВЕРНО? alert(req.responseText);
Можно ли как-нибудь файл загрузить как поле формы с именем file?
Попробовал:
var formData = new FormData(); formData.append("file", req.responseText); req.open("POST", "http://mysite.com/upload", false); req.send(formData)
но естесно не работает.
…hydrolizer
а если я скачал файл вашим способом? как мне его загрузить на другой сервер?
(XMLHttpRequest мне не нравится тем, что для ff 6 код придется менять. кстати, XMLHttpRequest тоже использует кукисы браузера?)
hydrolizer
ок, торрент-файлы - килобайт 20, так что для меня, видимо, разницы нет.
как мне быть со вторым вопросом?
или, если уж я сохранил файл на диск, как мне его теперь загрузить на другой сервер? как прочитать содержимое файла?
hydrolizer
какие преимущества скачивания методом, который вы указали, перед XMLHttpRequest?
И, если мне надо скачать файл, а потом тут же загрузить его на другой сервер - может, мне нет смысла сохранять файл в папку temp? Может, мне его в памяти сохранить (только как)?
Со скачиванием файлов возник такой вопрос - например, есть ссылка
http://dl.rutracker.org/forum/dl.php?t=3667324
Как мне сохранить файл под тем именем, что отдает rutracker? (srcURL.replace(/^.*\//,"") тут, конечно, не подходит)
Coordgun
удалось ли вам с этим разобраться?
я в случае открытия торрент-файлов хочу добавить в список возможных действий (Сохранить, Открыть в) добавить своё, третье действие.
Товарищи, есть ли какое-нибудь простенькое расширение, которое бы:
1) добавлялось в контекстное меню ссылки;
2) по клику на данном меню оно бы скачивало файл во временную папку;
3) потом бы этот файл закачивало на другой сервер;
4) удаляло бы файл.
(файл нужно именно скачать, просто ссылку не нужно передавать)
На его основе попробую сделать своё расширение.
Спасибо.
спасибо!
но мне б решение сразу... нужно чужой extension оживить, я в этом не очень понимаю
в строке 54:
[code]const fKey = new function () {
var prefBranch = null;
var hotkeys = [];
const getBlankTab = function(url) {
var i = 0;
var tabs = gBrowser.mTabContainer.childNodes;
for (i = 0; i < tabs.length; i++)
{
if ((gBrowser.getBrowserForTab(tabs[i]).contentDocument.location == "about:blank") ||
(gBrowser.getBrowserForTab(tabs[i]).contentDocument.location == "chrome://fastdial/content/fastdial.html") ||
(gBrowser.getBrowserForTab(tabs[i]).contentDocument.location == url))
return tabs[i];
}
return null;
};
const handleShortcutKey = function(aEvent) {
var curKeyCode = Number(aEvent.keyCode - aEvent.DOM_VK_F1);
/* DOM_VK_F1 to DOM_VK_F12 */
if (curKeyCode >= 0 && curKeyCode <= 11) {
if(hotkeys[curKeyCode].value != undefined &&
hotkeys[curKeyCode].value != "") {
Посмотрел на список установленных расширений и нашел, что эту панель выдает GMarks 1.0.2.1.
Спасибо за помощь.
Подскажите, плз, как отключить Быстрый поиск по закладкам (полупрозрачная панель, появляющаяся в центре экрана), запускаемый по двойному нажатию Home? (раздражает, что она работает и в полях ввода)
собственно, потому я и хочу плагинрасширение для ff написать
возвращаюсь к начальному вопросу: плагинамрасширениям можно скачивать файлы из интернета и сохранять их? можно ли потом получить ссылку на данный файл в локальной сети (типа \\192.168.0.1\temp\downloaded_file.torrent)?
С каким сервером у вас все так работает? ;)
Мне надо закачанный торрент-файл передать на NAS (Synology) - чтоб уже NAS сам скачал музыку/видео/т.п.
Крошка Ру,
ок, похоже надо объяснить, что требуется автоматизировать:
1) я кликаю по ссылке с торрентом - браузер должен данную ссылку перехватить (как вариант - показать себя в списке возможных программ для открытия файла "Как Firefoх следует обработать этот файл?");
2) дальше этот файл должен быть автоматически скачан в какую-нибудь temp-папку;
3) затем этот файл должен быть передан другому серверу (~другому компу в сети, он на торрент-трекере не авторизован);
4) потом этот файл должен быть удален.
Могут ли расширения такое делать?
Могут ли расширения скачивать файлы (нужно, в частности, скачивать .torrent файлы - т.е. если пользователь авторизован на сайте, то должны применяться cookies и т.п.)?
Спасибо!
А чтоб в стандартный список паролей сохраняло - ничего нет?
проголосовал за соответствующий баг + нашел еще хорошую вещь (bookmarklet) для сохранения паролей