I found some code using google search:
function insertAtCaret (textarea, icon) {
if (document.getElementById(textarea).createTextRange && document.getElementById(textarea).caretPos) {
var caretPos = document.getElementById(textarea).caretPos;
selectedtext = caretPos.text;
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == '' ? icon + '' : icon;//this line I am not understand
}
}
function storeCaret (textarea) {
if (document.getElementById(textarea).createTextRange) document.getElementById(textarea).caretPos = document.selection.createRange().duplicate();
}
here why need judge
caretPos.text.charAt(caretPos.text.length - 1) == ''
I think icon+'' and icon are equal