【问题标题】:How to get div with selected text?如何使用选定的文本获取 div?
【发布时间】:2016-09-19 19:09:09
【问题描述】:
我有div 和contenteditable="true"。如何通过选择文本获取div?例如
<div class="md-editor" contenteditable="true"><div class="imustgetthidivbyselecttext">help</div>
当我选择文本时,如何获取div文本中的类?
【问题讨论】:
标签:
javascript
html
select
text
【解决方案1】:
如果 contenteditable="true" div 是父 div 那么你可以使用下面的代码
<div class="md-editor" contenteditable="true"><div class="imustgetthidivbyselecttext" onclick='call(this);'>help</div></div>
function call(id) {
alert(id.className); // For current div
alert(id.parentElement.className); // For parent div where contenteditable="true"
}
【解决方案3】:
function getSelectedText() {
var text = '';
if (window.getSelection) {
text = window.getSelection().toString();
}
else if (document.selection && document.selection.type != "Control") {
text = document.selection.createRange().text;
}
return text;
}
<div contenteditable="true" style="border: solid 1px black; width: 300px;">hello world</div>
<input type="button" onclick="alert(getSelectedText())" value="Get selected text" />