zoukankan      html  css  js  c++  java
  • jQuery插件在光标定位的地方插入文字(插件5)

    (function($){
        $.fn.extend({
            "insert":function(value){
                //默认参数
                value=$.extend({
                    "text":"123"
                },value);
                
                var dthis = $(this)[0]; //将jQuery对象转换为DOM元素
                
                //IE下
                if(document.selection){
                    
                    $(dthis).focus();        //输入元素textara获取焦点
                    var fus = document.selection.createRange();//获取光标位置
                    fus.text = value.text;    //在光标位置插入值
                    $(dthis).focus();    ///输入元素textara获取焦点
                    
                
                }
                //火狐下标准    
                else if(dthis.selectionStart || dthis.selectionStart == '0'){
                    
                    var start = dthis.selectionStart;    //获取焦点前坐标
                    var end =dthis.selectionEnd;         //获取焦点后坐标

        //以下这句,应该是在焦点之前,和焦点之后的位置,中间插入我们传入的值 .然后把这个得到的新值,赋给文本框       dthis.value = dthis.value.substring(0, start) + value.text + dthis.value.substring(end, dthis.value.length); }     //在输入元素textara没有定位光标的情况       else{           this.value += value.text; this.focus();       };       return $(this);     }   }) })(jQuery)

    主要思路:

      当点击某个元素的时候,让一个输入框,插入指定的值。?

      1.当点击某个元素的时候,应该让输入框获取焦点,因为只有获得了焦点,才能在里面输入值;

      IE下:document.selection.createRange()

      FF下:var start = dthis.selectionStart;    //获取焦点前坐标

         var end =dthis.selectionEnd;        //获取焦点后坐标

     

      2.获取当前输入框焦点的位置

      3.将值插入到输入框焦点的位置;

      4.再次获取焦点;保证光标在输入框内

     

    [下载 DEMO]

  • 相关阅读:
    Java实现 计蒜客 拯救行动
    Java实现 计蒜客 拯救行动
    Java实现 LeetCode 174 地下城游戏
    Java实现 LeetCode 174 地下城游戏
    Java实现 LeetCode 174 地下城游戏
    Java实现 LeetCode 173 二叉搜索树迭代器
    Java实现 LeetCode 173 二叉搜索树迭代器
    Visual Studio的SDK配置
    怎样使用CMenu类
    mfc menu用法一
  • 原文地址:https://www.cnblogs.com/lufy/p/2494647.html
Copyright © 2011-2022 走看看