選択したテキストをページからクリップボードにコピーする、Windows 用のクロム拡張機能を作成しようとしています。Java スクリプト部分を実行するために jquery を使用しています。
そのページで選択/強調表示されたテキストを取得するにはどうすればよいですか? 別の言い方をすれば、テキストの任意の部分が強調表示されたときにトリガーされるイベントリスナーがあります。
選択したテキストをページからクリップボードにコピーする、Windows 用のクロム拡張機能を作成しようとしています。Java スクリプト部分を実行するために jquery を使用しています。
そのページで選択/強調表示されたテキストを取得するにはどうすればよいですか? 別の言い方をすれば、テキストの任意の部分が強調表示されたときにトリガーされるイベントリスナーがあります。
これまでに経験した中で最高のものは、ゼロクリップボードを使用し、選択したテキストをdocument.selection.createRange().text
または を使用して手動で添付することですwindow.getSelection()
使用方法: http://code.google.com/p/zeroclipboard/wiki/Instructions
これで良いスタートが切れるはずです:
var highlighted;
$(document).on('mouseup', function(e){
if (window.getSelection) {
highlighted = window.getSelection();
} else if (document.selection) {
highlighted = document.selection.createRange();
}
var selectedText = highlighted.toString() !=='' && highlighted;
alert(selectedText); // to be added to clipboard
});
function getSelected() {
if (window.getSelection) return window.getSelection();
if (document.getSelection) return document.getSelection();
if (document.selection) return document.selection.createRange().text;
}
document.onmouseup = function () {
getSelected(); // => "Something you've sele..."
};