ブックマークレットとは、お気に入り(ブックマーク)に、URLではなく動作するようにjavascriptなどのコードを登録しておき、必要に応じて呼び出すものを言います。改行などが混じっていると正常に動作しませんので注意。
ブックマークレット
ブックマークレット - Wikipedia
ブックマークレットとは - はてなキーワード
あんまりないですが、技術ドキュメントとかをプリント出力するさいなんかに、余分な要素(サイドのメニューとか)を非表示にしておけます。文書構造がしっかりしているページで利用できるととても強力です。
javascript:(function(){if(typeof jQuery=='undefined'){var jq=document.createElement('script');jq.type='text/javascript';jq.onload=bookmarklet;jq.src='http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js';document.body.appendChild(jq);}$('#sidebar-wrapper').hide();})();
展開すると下のようになります。
javascript : (function ()
{
if (typeof jQuery == 'undefined')
{
var jq = document.createElement('script');
jq.type = 'text/javascript';
jq.onload = bookmarklet;
jq.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js';
document.body.appendChild(jq);
}
$('#sidebar-wrapper').hide();
})();
ほとんどjQueryの呼び出しのためのコードです。
最後の$('#sidebar-wrapper').hide();を、必要に応じた選択方法と動作に変更してあげればよいでしょう。
ベースをjQueryとしているので、こういう処理はいくらでも応用できそうです。
・指定のクラス/IDを消去する
$('#sidebar-wrapper').hide();
javascript:(function(){if(typeof jQuery=='undefined'){var jq=document.createElement('script');jq.type='text/javascript';jq.onload=bookmarklet;jq.src='http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js';document.body.appendChild(jq);}$('#sidebar-wrapper').hide();})();
・指定のクラス/IDに色をつける
$('.post-title .entry-title').css("background-color","lightblue");
javascript:(function(){if(typeof jQuery=='undefined'){var jq=document.createElement('script');jq.type='text/javascript';jq.onload=bookmarklet;jq.src='http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js';document.body.appendChild(jq);}$('.post-title .entry-title').css("background-color","lightblue");})();
・リンク部分に色をつける
$('a').css("background-color","yellow");
javascript:(function(){if(typeof jQuery=='undefined'){var jq=document.createElement('script');jq.type='text/javascript';jq.onload=bookmarklet;jq.src='http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js';document.body.appendChild(jq);}$('a').css("background-color","yellow");})();
・リンク部分を消す
$('a').contents().unwrap();
javascript:(function(){if(typeof jQuery=='undefined'){var jq=document.createElement('script');jq.type='text/javascript';jq.onload=bookmarklet;jq.src='http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js';document.body.appendChild(jq);}$('a').contents().unwrap();})();
などなど。
ダイアログを出して呼び出しの都度、手動でセレクタを指定できるようにするには下記のようにします。
・ダイアログで指定要素を色づけ
var sel=window.prompt("セレクタを指定してください", "");
$(sel).css("background-color","lightgreen");
javascript:(function(){if(typeof jQuery=='undefined'){var jq=document.createElement('script');jq.type='text/javascript';jq.onload=bookmarklet;jq.src='http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js';document.body.appendChild(jq);}else{bookmarklet();}function bookmarklet(){var sel=window.prompt("セレクタを指定してください", "");$(sel).css("background-color","lightgreen");}})();
0 件のコメント :
コメントを投稿