Selected Links
by
uneco
2012-05-16 [2012/05/16 04:53:08]
Selected Links !!!!!
-
/*
* @title Selected Links
* @description Selected Links !!!!!
* @include http://*
* @license MIT License
* @require
*/
(function(){Array.prototype.uniq=function(){tmp={};tmp_arr=[];for(var a=0;a<this.length;a++){tmp[this[a]]=a}for(a in tmp){tmp_arr.push(a)}return tmp_arr};var a=function(b,c){if(c==undefined){var d=document.getElementsByTagName("base");if(d.length>0){c=a(d[0].getAttribute("href"))}else{c=location.href}}var e=b.split("/");if(/http:|https:|ftp:/.test(e[0])){return b}var f,g=c.split("/");if(g.length>3){g.pop()}if(e[0]===""){c=g[0]+"//"+g[2];g=c.split("/");delete e[0]}for(f=0;f<e.length;f++){if(e[f]===".."){if(typeof e[f-1]!=="undefined"){delete e[f-1]}else if(g.length>3){g.pop()}delete e[f]}if(e[f]==="."){delete e[f]}}var h=[];for(f=0;f<e.length;f++){if(typeof e[f]!=="undefined"){h[h.length]=e[f]}}return g.join("/")+"/"+h.join("/")};var b=window.getSelection().getRangeAt(0);var c=b.commonAncestorContainer;var d=c.innerHTML;var e=b.startContainer;var f=e.ownerDocument.createElement("layer");var g=b.extractContents();f.appendChild(g);b.insertNode(f);console.log(c);var h=f.getElementsByTagName("a");var i=[];for(var j=0;j<h.length;j++){console.log(h[j]);i.push(a(h[j].getAttribute("href")))}c.innerHTML=d;window.getSelection().removeAllRanges();alert(i.uniq().join("\n"))})()
-
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。