Вобщем часто файлы выкладывают в архивах из нескольких десятков частей. Так вот когда название ссылки не является точным адресом для скачивания - их нельзя разом скопировать и вставить в менеджер закачек.... Если нажать "копировать ссылку" при выделении всех - копируется одна, и..... п_р_и_х_о_д_и_т_с_я  к_о_п_и_р_о_в_а_т_ь  к_а_ж_д_у_ю :iron:. Чем больше частей, тем менее интересным становится это занятие:dumb: А есть ли способ "оптом" скопировать такие линки в буфер?

http://forum.mozilla-russia.org/viewtop … 70#p262970 и далее.

Вообще "поиск рулит" ;)
Я пользуюсь Linky, но у него не самый удобный интерфейс для этого - он скорее предназначен для множественного открытия ссылок со страницы.

Forest, очень интересно, какие ключевые слова предложишь для поиска в данном случае?!
MySh,
Ох, там бы я это, конечно в жизни не отыскал :)
Оставлю для будущих поколений :) - думаю многим пригодится - очень нужная штука:

1. ставим это расширение
... а с ним и кнопку на тулбар - инфа о странице. терь на странице с такими ссылками жмем эту кнопку и в инфе о ссылках прописываем фильтр(напр rapidshare) - остаются только нужные линки, выделяем, "копировать", "имя", yeah!!!! Или..

2. создается закладка:

Выделить код

Код:

javascript: (function() { if(window.__removeLinksList) { window.__removeLinksList(); return; } var containerClass = "__linkContainer"; var allLinks = {}; var linksCnt = 0; function getLinks(doc, rng) { if(rng) { var div = doc.createElement("div"); div.appendChild(rng.cloneContents()); doc = div; } var links = doc.getElementsByTagName("a"), a, h; for(var i = 0, len = links.length; i < len; i++) { a = links[i]; h = a.href; if(h) { allLinks[h] = a.textContent; linksCnt++; } } } function parseNodes(win) { try { var sel = null; var sel = win.getSelection(); var rngCnt = sel.rangeCount; if(rngCnt == 0) { getLinks(win.document, null); return; } for(var i = 0; i < rngCnt; i++) getLinks(win.document, sel.getRangeAt(i)); } catch(e) { setTimeout(function() { throw e; }, 0); } } function parseWin(win) { parseNodes(win); for(var i = 0, len = win.frames.length; i < len; i++) parseWin(win.frames[i]); } parseWin(window); function deselect() { window.getSelection().removeAllRanges(); } if(linksCnt == 0) { deselect(); parseWin(window); } if(linksCnt == 0) { alert("Ссылок нет!"); return; } var body = document.body; var _body; if(body.nodeName.toLowerCase() != "body") { _body = document.createElement("body"); document.documentElement.appendChild(_body); body = _body; } var head = document.getElementsByTagName("head")[0]; var addedStl = null; if(head) { addedStl = document.createElement("style"); addedStl.type = "text/css"; addedStl.appendChild(document.createTextNode( "div." + containerClass + " > a { color: #00b !important; text-decoration: none !important; " + "font: 13px \"Courier New\",monospace !important; }\n" + "div." + containerClass + " > a:hover { color: #00b !important; text-decoration: underline !important; }" )); head.appendChild(addedStl); } var container = document.createElement("div"); var cBorder = 20; var mHeight = window.innerHeight - cBorder*2; var bHeight = 28; container.setAttribute( "style", "position: fixed !important; " + "z-index: 65535 !important; " + "text-align: left !important; " + "top: " + cBorder + "px !important; " + "left: " + cBorder + "px !important; " + "right: " + cBorder + "px !important; " + "max-height: " + mHeight + "px !important; " + "background-color: #f8f8f8 !important; " + "border: 1px solid #00a !important; " + "padding: 2px 6px !important; " + "opacity: 0.9 !important; " ); var _cnt = document.createElement("div"); _cnt.setAttribute( "style", "display: block !important; " + "overflow: auto !important; " + "max-height: " + (mHeight - bHeight) + "px !important; " ); container.appendChild(_cnt); var linksContainer = document.createElement("div"); linksContainer.setAttribute( "style", "display: block !important; " ); _cnt.appendChild(linksContainer); function appendButton(fnc, lbl) { var btt = document.createElement("button"); btt.onclick = fnc; btt.setAttribute( "style", "margin: 0 4px 4px 0 !important; " + "height: " + (bHeight - 4) + "px !important; " + "font-size: 13px !important; " ); btt.appendChild(document.createTextNode(lbl)); container.insertBefore(btt, _cnt); } window.__removeLinksList = function() { if(addedStl) addedStl.parentNode.removeChild(addedStl); container.parentNode.removeChild(container); if(_body) _body.parentNode.removeChild(_body); delete(window.__removeLinksList); }; appendButton( window.__removeLinksList, "Закрыть" ); function selectAll() { deselect(); var rng = document.createRange(); rng.selectNode(linksContainer); window.getSelection().addRange(rng); } appendButton( selectAll, "Выделить всё" ); var linkContainer = document.createElement("div"); linkContainer.setAttribute( "style", "display: block !important;" ); linkContainer.className = containerClass; var a, cnt; for(var h in allLinks) { a = document.createElement("a"); cnt = linkContainer.cloneNode(false); a.href = h; a.appendChild(document.createTextNode(h)); a.title = allLinks[h]; cnt.appendChild(a); linksContainer.appendChild(cnt); } body.appendChild(container); selectAll(); })();

by Infocatcher
как ей пользоваться, надеюсь известно...
ну и не забываем дать ей "краткое имя" - теперь все мегаудобно
MySh, спасибо