bookmarklet
by
nonnonHTN
2017-06-05 [2017/06/05 12:33:01]
my bookmarklet
-
/*
* @title bookmarklet
* @description my bookmarklet
* @include http://*
* @license MIT License
* @require
*/
function __show(idx)
{
var popup = document.getElementById('__commPopup_' + idx);
if ( !popup ) return;
if ( popup.style.display=='none' )
{
popup.style.display='';
return;
}
popup.style.display='none';
}
function __hide(idx)
{
var popup = document.getElementById('__commPopup_' + idx);
if ( !popup ) return;
popup.style.display='none';
}
(function o()
{
var elms=document.getElementsByClassName('contents_text');
var length = elms.length;
for(i = 0; i < length; ++i){
elm = elms[i];
if ( elm.getElementsByClassName('popupSrc')[0] )
continue;
html = elm.innerHTML;
var idx = html.search("#[0-9]{7}");
if ( idx < 0 ) continue;
var comm_idx = html.substring(idx + 1, idx + 1 + 7);
var targetspan = document.getElementById('comment_otherdetails_' + comm_idx );
var link_id = (i + "__" + comm_idx).trim();
var targethtml = targetspan.parentNode.parentNode.parentNode.getElementsByClassName('contents_text')[0].innerHTML;
html = html.substring(0,idx) + '<span onclick="__show(\''+ link_id +'\');" style="color:blue;" class="popupSrc">#'
+ comm_idx + '</span>'
+ '<div class="_popop commentBody" id="__commPopup_' + link_id + '" style="position:absolute;background-color:white;border: 1px solid brown;display:none;z-index:10;" dblclick="__hide(\'' + link_id + '\')">'
+ targethtml + '</div>' + html.substring(idx + 8);
elm.innerHTML = html;
}
})();
-
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。