如何在TEXTAREA制定的位置插入表情

zhangyp136 发布于 2011/08/21 13:40
阅读 987
收藏 0
加载中
0
zhangyp136
zhangyp136

$('#textarea').val($('#textarea').val()+‘表情title’ )

我是这样写的,觉得不对,因为这样的话,每次插入的表情总会在最后面。

但是又不知道该怎样写,所以请求各位大侠帮忙啦,非常感谢~~

0
红薯
红薯
可参考oschina个人空间的发表动态那里,那个 textbox 的定义在 oschina.js
0
zhangyp136
zhangyp136
呵呵,谢谢楼上两位啦~~
0
黄平俊
黄平俊
(function($){
	$.fn.extend({
		insertAtCaret: function(myValue){
			var $t=$(this)[0];
			if (document.selection) {
				this.focus();
				sel = document.selection.createRange();
				sel.text = myValue;
				this.focus();
			}
			else 
				if ($t.selectionStart || $t.selectionStart == '0') {
					var startPos = $t.selectionStart;
					var endPos = $t.selectionEnd;
					var scrollTop = $t.scrollTop;
					$t.value = $t.value.substring(0, startPos) + myValue + $t.value.substring(endPos, $t.value.length);
					this.focus();
					$t.selectionStart = startPos + myValue.length;
					$t.selectionEnd = startPos + myValue.length;
					$t.scrollTop = scrollTop;
				}
				else {
					this.value += myValue;
					this.focus();
				}
		}
	})	
})(jQuery);
使用方法: $(“#txtId”).insertAtCaret(face);
返回顶部
顶部