Quantcast
Channel: W&R : Jazzと読書の日々
Viewing all articles
Browse latest Browse all 1492

iOSのSafariでBookmarkletを取り出すブックマークレット MarkletTaker

$
0
0

よくありませんか、こういうこと?


Todoist - DennisKehrig.de
Todoist is a simple web based to-do list that I quite like. Though it is not specifically designed f...

まあ、こういうページを見てたわけです。Safariを拡張するブックマークレットですが、なんとこれは、見てるページに重ねてTodoistのリストを表示するシロモノらしい。いつでもどこでも、自分のTodoを確認したり、終了したりできるわけです。すごいすごい。


f:id:wineroses:20150211223657j:image

ところがこのブックマークレット、タップしても反応しない。正確に言うと、反応しないんじゃなくて「ブックマークレットバーにドラッグ&ドロップしろ」と指示が出る。でも、iPhoneにしてもiPadにしてもドラッグはできない。いつもなら泣く泣く諦めるのですが。


f:id:wineroses:20150211223715j:image

今回は諦めずに、下記のようなスクリプトを組んでみました。埋め込まれているブックマークレットを探し出し、テキストエリアに変換します。テキストエリアになれば、コピペは自由自在。これでブックマークレットのスクリプトを頂戴しようという作戦です。

javascript:e=document.getElementsByTagName("a");for(i=0;i<e.length;i++){a=e[i];if(/javascript:/.test(a.href)){x=document.createElement("textarea");x.innerText=a.href.replace(/</g,"&#60;");x.style.width="100%";x.style.background="yellow";a.parentNode.replaceChild(x,a);}}

登録リンクはこちら→ http://tinyurl.com/qj2v9n8


f:id:wineroses:20150211223734j:image

手に入れた Todoist Anywhere を実行したのがこの画面。ほら、ちゃんと走ってる。チェックしてタスク完了にもできる。これ、便利かも。でもちょっと、長いリストになるとiPadの画面からはみ出ます。見ることは見れるんだけど。まあ、こんなものかな。


そんなわけで、今回のポイントは「iOSだからって諦めることぁない」ってこと。タップして「Javascript」と出るだけだったボタンでも、これなら中身を取り出すことができる。本当は replaceChild というコマンドを覚えて練習に作ってみたスクリプトなんですが、意外と実用的だったのでブログに載せておきます。何か応用できないかな。


Viewing all articles
Browse latest Browse all 1492

Trending Articles