`

jQuery 实现自动增长的文本输入框

阅读更多
(function($) {

    $.fn.autoSizeText = function(settings) {

        var _defaultSettings = {min:20,max:40};

        var _settings = $.extend(_defaultSettings, settings);

        var _handler = function() {

            jQuery(this).keyup(function() {

                if (jQuery(this).attr("type") != 'text') {

                    return false;

                }

                jQuery(this).attr("size", _settings.min);

                var actLength = jQuery(this).val().length;

                if (actLength > _settings.min && actLength < _settings.max) {

                    jQuery(this).attr("size", actLength + 1);

                } else if (actLength <= _settings.min) {

                    jQuery(this).attr("size", _settings.min);

                }

            }); 

        };

        return this.each(_handler);

    };

})(jQuery); 

 

调用方法:$(‘:text’).autoSizeText();即可。

本插件有两个可选参数:max(设置文本框最大的size,超过此值不再size增长,默认值40)和min(设置文本框最小的size,同时也是 文本框的初始size,默认值为20),在调用时可以修改。

例如:$(‘:text’).autoSizeText({min:24,max:35});

$(‘:text’).autoSizeText({max:35});//min没有设置,取默认值20

$(‘:text’).autoSizeText({min:12});//max没有设置,取默认值40

 

你可以在此基础上继续扩展,例如可以支持textarea。

分享到:
评论

相关推荐

    jQuery 自动增长的文本输入框实现代码

    为了解决这个问题,我们可以利用JavaScript库jQuery来创建一个自适应大小的文本输入框,即自动增长的文本输入框。 jQuery提供了一个强大的API,允许开发者通过编写插件来扩展其功能。在本例中,我们看到一个名为`...

    jquery输入框随输入字符长度自动增长

    在IT领域,尤其是在网页开发中,"jquery输入框随输入字符长度自动增长"是一个常见的交互设计功能。这个功能使得文本输入框(input field)能够随着用户输入的字符数量增加而动态调整宽度,提供更好的用户体验,特别...

    jQuery自动增长自动扩展自动调整文本区域_JavaScript_下载.zip

    本资源“jQuery自动增长自动扩展自动调整文本区域”是针对文本输入框(textarea)的一种增强功能,使得文本区域可以随着用户输入的内容自动调整大小,提供更好的用户体验。 这个项目“jquery.autogrow”是一个...

    jquery插件制作 自增长输入框实现代码

    在这篇文章中,我们要探讨的是如何利用jQuery制作一个自增长输入框的插件,即当用户输入内容时,输入框的高度能够自动增长,以适应内容的增多。下面是详细介绍这一过程的知识点: ### 1. HTML结构搭建 自增长输入框...

    jQuery实现可自动随着内容的增加自动伸缩的弹性文本框效果.zip

    在IT行业中,jQuery是一个广泛使用的...对于自动伸缩的文本框效果,我们首先需要一个输入框(input[type="text"])或文本区域(textarea)。假设我们的文本框元素的ID是"elasticInput",我们可以这样初始化: ```html ...

    输入框自适应大小

    2. **CSS Grid**: CSS Grid布局也可以实现类似的效果,通过设置`grid-auto-columns`或`grid-template-columns`属性,可以让输入框自动扩展。 3. **JavaScript/jQuery监听事件**: 可以使用JavaScript或jQuery监听`...

    jQuery.autoTextarea文本框自适应输入高度代码.rar

    在网页设计中,用户交互体验是至关重要的一个环节,其中文本输入框的优化是提升用户体验的关键因素之一。`jQuery.autoTextarea`是一个优秀的JavaScript插件,它专门针对文本框高度自适应问题提供了解决方案。这个...

    可控制伸缩高度的textarea.rar

    在网页设计中,`textarea` 是一种常用的HTML元素,用于创建多行文本输入框,让用户可以输入大量文本。然而,标准的`textarea`通常有一个固定的高度,这在用户需要输入更多内容时可能会变得不够用。"可控制伸缩高度的...

    牙科预约展示响应式网站模板

    4. **JavaScript和jQuery**:这两者常用于实现网页的动态效果和交互功能,例如表单验证、滑动菜单、轮播图等。jQuery是一个流行的JavaScript库,简化了DOM操作和事件处理。 5. **预约系统**:模板可能内置了一个...

Global site tag (gtag.js) - Google Analytics