getCursorPos(obj) {
var CaretPos = 0;
if (document.selection) {
obj.focus();
var Sel = document.selection.createRange();
Sel.moveStart("character", -obj.value.length);
CaretPos = Sel.text.length;
}
else if (obj.selectionStart || obj.selectionStart == "0") CaretPos = obj.selectionEnd;
return CaretPos;
}
setCursorPos(obj, pos) {
if (obj.setSelectionRange) {
obj.focus();
obj.setSelectionRange(pos, pos);
} else if (obj.createTextRange) {
var range = obj.createTextRange();
range.collapse(true);
range.moveEnd("character", pos);
range.moveStart("character", pos);
range.select();
}
}
poLastDiv(obj) {
obj.focus();
if (window.getSelection) {
obj.focus();
let range = window.getSelection();
range.selectAllChildren(obj);
range.collapseToEnd();
} else if (document.selection) {
let range = document.selection.createRange();
range.moveToElementText(obj);
range.collapse(false);
range.select();
}
}
getCursorWithElement() {
let element = this.getDomWithEventtarget;
var doc = element.ownerDocument || element.document;
var win = doc.defaultView || doc.parentWindow;
var sel;
if (typeof win.getSelection != "undefined") {
sel = win.getSelection();
if (sel.rangeCount > 0) {
var range = win.getSelection().getRangeAt(0);
return range.endContainer.parentElement;
}
}
}
getDomWithCursorPos(x, y) {
return document.elementFromPoint(x, y);
}