Stack Overflow 28664376
How to disable text selection on double click, but not otherwise?
by andrewgu
HTML
<textarea id="doc"></textarea>
CSS
#doc {
width: 400px;
height: 300px;
}
JavaScript
var doc = document.getElementById("doc"), click = [];
function storeSelection() {
if (click.length>3) {
click.splice(0, click.length-3);
}
click.push({start:doc.selectionStart,end:doc.selectionEnd});
}
function select(start, end) {
doc.selectionStart = start;
doc.selectionEnd = end;
}
function selectLast() {
if (click.length>=1) {
select(click[click.length-1].start,click[click.length-1].end);
}
}
function dblClick() {
click.splice(click.length-2,2);
selectLast();
}
doc.addEventListener("mouseup", storeSelection);
doc.addEventListener("keyup", storeSelection);
doc.addEventListener("dblclick", dblClick);
// Dummy Text Insert //
function helloWorlds(h, v) {
var o = "";
for (var r=0; r<v; r++) {
for (var c=0; c<h; c++) {
o += "hello world ";
}
o += "\n";
}
return o.trim();
}
doc.value = helloWorlds(8, 20);