jQuery实现在textarea指定位置插入字符或表情的方法


Posted in Javascript onMarch 11, 2015

本文实例讲述了jQuery实现在textarea指定位置插入字符或表情的方法。分享给大家供大家参考。具体实现方法如下:

1. 函数定义    

(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);

2. 调用方法
$("#textareaId").insertAtCaret("新表情");

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

Javascript 相关文章推荐
javascript函数中的arguments参数
Aug 01 Javascript
jquery创建一个ajax关键词数据搜索实现思路
Feb 26 Javascript
jquery mobile事件多次绑定示例代码
Sep 13 Javascript
jQuery实现精美的多级下拉菜单特效
Mar 14 Javascript
js 创建对象 经典模式全面了解
Aug 16 Javascript
微信小程序 获取设备信息 API实例详解
Oct 02 Javascript
Vue2.0组件间数据传递示例
Mar 07 Javascript
jQuery中extend函数简单用法示例
Oct 11 jQuery
ES6/JavaScript使用技巧分享
Dec 14 Javascript
webpack项目轻松混用css module的方法
Jun 12 Javascript
js实现搜索栏效果
Nov 16 Javascript
浅谈Vue的computed计算属性
Mar 21 Vue.js
jQuery实现统计输入文字个数的方法
Mar 11 #Javascript
jQuery处理json数据返回数组和输出的方法
Mar 11 #Javascript
jquery实现表格本地排序的方法
Mar 11 #Javascript
jQuery实现渐变下拉菜单的简单方法
Mar 11 #Javascript
jQuery实现新消息闪烁标题提示的方法
Mar 11 #Javascript
javascript实现详细时间提醒信息效果的方法
Mar 11 #Javascript
JavaScript实现SHA-1加密算法的方法
Mar 11 #Javascript
You might like
全国FM电台频率大全 - 17 湖北省
2020/03/11 无线电
初次接触php抽象工厂模式(Elgg)
2010/03/21 PHP
PHP生成图片验证码、点击切换实例
2014/06/25 PHP
js获取url参数的使用扩展实例
2007/12/29 Javascript
JavaScript与DOM组合动态创建表格实例
2012/12/23 Javascript
jquery的ajax和getJson跨域获取json数据的实现方法
2014/02/04 Javascript
node.js中的fs.lchownSync方法使用说明
2014/12/16 Javascript
Jquery实现图片预加载与延时加载的方法
2014/12/22 Javascript
js如何改变文章的字体大小
2016/01/08 Javascript
jQuery form插件之formDdata参数校验表单及验证后提交
2016/01/23 Javascript
Bootstrap4一次重大更新 几乎涉及每行代码
2016/05/16 Javascript
babel之配置文件.babelrc入门详解
2018/02/22 Javascript
详解简单易懂的 ES6 Iterators 指南和示例
2019/09/24 Javascript
Node.js+Vue脚手架环境搭建的方法步骤
2020/03/08 Javascript
JS中间件设计模式的深入探讨与实例分析
2020/04/11 Javascript
react 原生实现头像滚动播放的示例
2020/04/21 Javascript
vue实现图片按比例缩放问题操作
2020/08/11 Javascript
JS将指定的某个字符全部转换为其他字符实例代码
2020/10/13 Javascript
使用js获取身份证年龄的示例代码
2020/12/11 Javascript
[00:31]DOTA2上海特级锦标赛 Fnatic战队宣传片
2016/03/04 DOTA
[03:54]Ehome出征西雅图 回顾2016国际邀请赛晋级之路
2016/08/02 DOTA
Python中的高级函数map/reduce使用实例
2015/04/13 Python
如何处理Python3.4 使用pymssql 乱码问题
2016/01/08 Python
python3.6环境安装+pip环境配置教程图文详解
2019/06/20 Python
django框架创建应用操作示例
2019/09/26 Python
python psutil监控进程实例
2019/12/17 Python
纯CSS3制作的简洁蓝白风格的登录模板(非IE效果更好)
2013/08/11 HTML / CSS
汇集了世界上最好的天然和有机美容产品:LoveLula
2018/02/05 全球购物
进程的查看和调度分别使用什么命令
2015/03/25 面试题
Linux Interview Questions For software testers
2012/06/02 面试题
servlet面试题
2012/08/20 面试题
生产部厂长职位说明书
2014/03/03 职场文书
县政府领导班子四风问题对照检查材料思想汇报
2014/09/26 职场文书
2014年房地产个人工作总结
2014/12/20 职场文书
演讲开场白和结束语
2015/05/29 职场文书
Golang生成Excel文档的方法步骤
2021/06/09 Golang