当前位置: 移动技术网 > IT编程>开发语言>Jquery > 可编辑且宽度自适应input

可编辑且宽度自适应input

2019年03月21日  | 移动技术网IT编程  | 我要评论

默认的input项是比较难看的,并且它的宽度还无法随着输入而变化,这样未免有些呆板,不过借助javascript可以达到宽度自适应的效果,下面为了方便使用了jquery:

<div class="list">
    <span class="list_name">娉娉袅袅</span>
    <input type="text" class="list_name hidden">
</div>
.hidden{
      display: none;
    }

    .list{
      background-color: #303030;
      color: aliceblue;
      display: inline-block;
      font-size: 2rem;
      padding: 0.5rem 1.5rem;
      border-radius: 1rem;
    }
    input{
      border: none;
      outline: none;
      font-size: 2rem;
      background-color: transparent;
      color: #f16665;
      caret-color: aliceblue;
    }
var $span = $("span.list_name");
    var $input = $("input.list_name");
    function onedit($span){
      $span.hide()
        .siblings("input.list_name")
        .val($span.text())
        .show()
        .focus();
    }
    $span.click(function(){
      onedit($(this));
    });
    $input.bind("keydown", function(e){
      if(e.keycode == "13"){
        $(this).hide()
        .siblings("span.list_name")
        .text($(this).val())
        .show();
      }
    })
    $input.bind("blur", function(){
      $(this).hide()
        .siblings("span.list_name")
        .text($(this).val())
        .show();
    });
    $("input[type='text']").bind("focus",function(){
      $(this).css("width",$(this).val().length + "em");
    })
    $("input[type='text']").bind("input propertychange",function(){
      $(this).css("width",$(this).val().length + "em");
    })

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网