Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Avatar for KuCalc : devops.
Download
50654 views
1
(function($) {
2
$.fn.caret = function(pos) {
3
var target = this[0];
4
//get
5
if (arguments.length == 0) {
6
//HTML5
7
if (window.getSelection) {
8
//contenteditable
9
if (target.contentEditable == 'true') {
10
target.focus();
11
var range1 = window.getSelection().getRangeAt(0);
12
var range2 = range1.cloneRange();
13
range2.selectNodeContents(target);
14
range2.setEnd(range1.endContainer, range1.endOffset);
15
return range2.toString().length;
16
}
17
//textarea
18
return target.selectionStart;
19
}
20
//IE<9
21
if (document.selection) {
22
target.focus();
23
var range1 = document.selection.createRange();
24
var range2 = document.body.createTextRange();
25
range2.moveToElementText(target);
26
range2.setEndPoint('EndToEnd', range1);
27
return range2.text.length;
28
}
29
//not supported
30
return 0;
31
}
32
//set
33
//HTML5
34
if (window.getSelection) {
35
//contenteditable
36
if (target.contentEditable == 'true') {
37
target.focus();
38
window.getSelection().collapse(target.firstChild, pos);
39
}
40
//textarea
41
else
42
target.setSelectionRange(pos, pos);
43
}
44
//IE<9
45
else if (document.body.createTextRange) {
46
var range = document.body.createTextRange();
47
range.moveToElementText(target)
48
range.moveStart('character', pos);
49
range.collapse(true);
50
range.select();
51
}
52
}
53
})(jQuery)
54