/*! * jQuery insertAtCaret * Allows inserting text where the caret is in a textarea * Copyright (c) 2003-2010 phpMyAdmin devel team * Version: 1.0 * Developed by the phpMyAdmin devel team. Modified by Alex King and variaas * http://alexking.org/blog/2003/06/02/inserting-at-the-cursor-using-javascript * http://www.mail-archive.com/jquery-en@googlegroups.com/msg08708.html * Licensed under the GPL license: * http://www.gnu.org/licenses/gpl.html */ ;(function($) { $.fn.insertAtCaret = function (myValue) { return this.each(function() { //IE support if (document.selection) { this.focus(); sel = document.selection.createRange(); sel.text = myValue; this.focus(); } else if (this.selectionStart || this.selectionStart == '0') { //MOZILLA / NETSCAPE support var startPos = this.selectionStart; var endPos = this.selectionEnd; var scrollTop = this.scrollTop; this.value = this.value.substring(0, startPos)+ myValue+ this.value.substring(endPos,this.value.length); this.focus(); this.selectionStart = startPos + myValue.length; this.selectionEnd = startPos + myValue.length; this.scrollTop = scrollTop; } else { this.value += myValue; this.focus(); } }); }; })(jQuery);