【実現したいこと】
マウスをドラッグしてテキストを範囲選択する。
特定のボタンをクリックすることで範囲選択中の文字をjQueryで取得し、アラートで表示する。
書いたコード
// html <div class="sample-button">このボタンを押すと選択範囲中のテキストをアラート表示</div> <div contenteditable="true" class="sampe-textarea">ここに文章があり、この文章内の任意の箇所を範囲選択したいです。</div> // jQuery <script> $('#body').on('click','.sample-button',function(){ var selectionObject = window.getSelection(); alert(selectionObject); }); </script>
問題点
テキストを範囲選択後、ボタンをクリックすると、空のアラートになってしまいます。
おそらく、ボタンをクリックしたタイミングで範囲選択が解除されてしまっているせいだと思います。
試しに.onの箇所を'click'ではなく'mouseover'にすると、ボタンにマウスが合った時点できちんと選択範囲中のテキストがアラートで表示できました。
テキストを範囲選択後、ボタンを「クリック」することで、それまで範囲選択していたテキストをアラート表示する方法がどうしてもわかりません。
もし、上記についておわかりになる方がいらっしゃいましたら、どうかご教授いただけましたら幸いです。
何卒、よろしくお願い申し上げます。
回答2件
あなたの回答
tips
プレビュー