首页 > 编程 > JavaScript > 正文

jQuery往textarea中光标所在位置插入文本的方法

2019-11-20 12:08:20
字体:
来源:转载
供稿:网友

本文实例讲述了jQuery往textarea中光标所在位置插入文本的方法。分享给大家供大家参考。具体实现方法如下:

<html><head><script src="jquery-1.8.1.min.js"></script><script >$(function() { /* 在textarea处插入文本--Start */ (function($) { $.fn.extend({   insertContent : function(myValue, t) {   var $t = $(this)[0];   if (document.selection) { // ie    this.focus();    var sel = document.selection.createRange();    sel.text = myValue;    this.focus();    sel.moveStart('character', -l);    var wee = sel.text.length;    if (arguments.length == 2) {    var l = $t.value.length;    sel.moveEnd("character", wee + t);    t <= 0 ? sel.moveStart("character", wee - 2 * t - myValue.length) : sel.moveStart( "character", wee - t - myValue.length);    sel.select();    }   } 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;    if (arguments.length == 2) {    $t.setSelectionRange(startPos - t,     $t.selectionEnd + t);    this.focus();    }   } else {    this.value += myValue;    this.focus();   }   }  }) })(jQuery); /* 在textarea处插入文本--Ending */});$(document).ready(function(){ $("#ch_button").click( function () {  $("#test_in").insertContent("<upload/day_140627/201406271546349972.jpg>");  });});</script></head><body ><button id="ch_button" value="插入" >插入</button><textarea name="content" id="test_in" rows="30" cols="100"></textarea></body></html>

希望本文所述对大家的jQuery程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表