我有文本输入项并使用select()我可以突出显示其中的文本,但有时文本已经被选中是有正当理由的,当我运行select()时,它会取消选择我认为,是否可以检查输入项是否被选中?
答案 0 :(得分:1)
您可以使用http://www.codetoad.com/javascript_get_selected_text.asp检查选择。
您必须检查选择是否在您的输入项目中。
var selecttxt = '';
if (window.getSelection) {
selecttxt = window.getSelection();
} else if (document.getSelection) {
selecttxt = document.getSelection();
} else if (document.selection) {
selecttxt = document.selection.createRange().text;
}
var textofinput = [...]; // put code to find text in input here
if (textofinput.indexOf(selecttxt) !== -1) {
// part of the text in the input is selected
alert('Conditions met!');
}
答案 1 :(得分:0)
您可以使用以下代码获取页面中所选元素的ID:
elem_offset = document.getSelection().anchorOffset;
elem = document.getSelection().anchorNode.childNodes[elem_offset];
alert(elem.id);