ブラウザ上の選択された文字列を取得する方法

JavaScriptを使って、ブラウザ上の選択された文字列を取得する方法を示します。
IEの場合は、documentに対して、「selection.createRange().text」を使うと取得できます。
Firefoxの場合は、documentまたはwindowに対して、「getSelection()」を使います。

次は選択された文字列をアラートで表示させる例です。

HTML

<input type="button" onclick="alert_selection()" value="表示">
<p>あいうえお</p>
<p><input type="text" value="かきくけこ"></p>
<p><textarea>さしすせそ</textarea></p>

JavaScript

function alert_selection(){
  x=document;
  y=window;
  if(x.selection){
    t=x.selection.createRange().text;
  }else if(y.getSelection){
    t=y.getSelection();
  }else if(x.getSelection){
    t=x.getSelection();
  }
  alert(t);
}

これを応用すると次のようなブックマークレットを作ることができます。
選択した文字列をGoogleで検索するブックマークレットです。最近のIEには右クリックからGoogle等で検索する機能がありますが、古いIEにはそれがありません。このブックマークレットで似たようなことができます。

選択文字列をGoogleで検索

Internet Explorerならば右クリックからお気に入りに保存してください。

javascript:(function(){x=document;y=window;if(x.selection){t=x.selection.createRange().text;}else%20if(y.getSelection){t=y.getSelection();}else%20if(x.getSelection){t=x.getSelection();};location.href='https://www.google.co.jp/search?q='+encodeURIComponent(t)+'';})();

コメント

タイトルとURLをコピーしました