可编辑且宽度自适应input
程序员文章站
2022-03-13 09:08:52
默认的input项是比较难看的,并且它的宽度还无法随着输入而变化,这样未免有些呆板,不过借助JavaScript可以达到宽度自适应的效果,下面为了方便使用了jQuery: 点击此查看样例 ......
默认的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"); })
推荐阅读
-
有两个input标签放到一行,如何实现左边的Input自适应宽度,右边的固定宽度。_html/css_WEB-ITnose
-
左右布局,左侧导航固定宽度且高度撑满整个屏幕,右侧内容宽度自适应
-
可编辑且宽度自适应input
-
Python xlwt工具使用详解,生成excel栏位宽度可自适应内容长度
-
input输入框自适应宽度
-
input 输入框宽度自适应
-
不使用border-radius,实现一个可复用的高度和宽度都自适应的圆角矩形 - jimmie.Mr
-
有两个input标签放到一行,如何实现左边的Input自适应宽度,右边的固定宽度。_html/css_WEB-ITnose
-
不使用border-radius,实现一个可复用的高度和宽度都自适应的圆角矩形 - jimmie.Mr
-
input文本框实现宽度自适应代码实例,input文本框_html/css_WEB-ITnose