JavaScriptなら、その問題、スッキリ解決できます。
パソコンのブラウザなら簡単にできる選択文字の検索ですが、モバイルではコピーしてペーストして…と手間がかかって、とてもメンドクサイのです。
メンドクサイは魔法の言葉。
なんと、ブックマークレットというものを使えば簡単にできるんです!
ブックマークレットってなんぞやっていうと、ブックマークの中身を書き換えたもの。
見た目は普通のブックマークですが、中身はJavaScriptなんです。
というわけで、せっかくJavaScriptを習得したので、ちょっとオリジナルブックマークレットを作ってみました。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
javascript: | |
!function(q) { | |
if(q) location.href = "http://www.google.com/m?q=" + q; | |
}(encodeURIComponent(getSelection())) |
こんな感じ。
ブックマークレット用に、かなり文字数に拘ったコーディングをしてみました。(結構楽しいw)
これを実行すると、文字列を選択していた場合は、その文字列でgoogle検索してくれます。
検索結果のために新しいタブは作りません。
この類のブックマークレットって新規にタブを作るものばかりなんですが、私はあまり新規タブ作りたくない派なので、こうしました。
特にモバイルだとメモリが少ないので沢山タブを作っても、あんまり便利じゃないんですよね。
JavaScriptの知識があれば、こうゆう細かいカスタマイズも簡単に出来てしまいます。
ブックマークレットの使い方は簡単。
まず、適当なダミーのブックマークを作ったのちに、編集を選び、ブックマークのURLを
javascript:!function(q){if(q)location.href="http://www.google.com/m?q="+q}(encodeURIComponent(getSelection()))
上記のスクリプトにコピペして置き換えるだけ。
タイトルは適当につけてください(例:選択文字検索とかgoogle searchとか)
ブックマークレットを登録したら、あとは使うだけです。
ページ内の文字で検索したいなと思ったら、文字を選択した後にブックマークをタップすると、google検索の結果を表示してくれます。
ブラウザ上の文字を選択する時は、大きめに拡大してから選択するとやり易くなります。
さらに、このブックマークをSafariのブックマークバーに登録すれば、画面上部のアドレスバーをタップするだけでブックマークが表示されるので、アクセスが簡単になりますよ。
このブックマークレットって、要はJavaScriptによるハックなので、かなりいろんな事ができますね。
DOMでページ全部を書き換えることも可能です。
これ、結構面白いと思うんですが、あまり複雑なブックマークレットは見かけないですね。
文字数制限は外部ファイルで回避できるので、やりたい放題できます。
例えば、amazonの価格推移が見られるkeepaとかブックマークレット作ってくれないかなぁ。
ん?…なんか私にも作れそう…ちょっと頑張ってみるかな。