十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
今天收到一个需求,input的宽度随着内容的变化而变化,最重要的还有大宽度的限制。
成都创新互联公司专注于企业成都营销网站建设、网站重做改版、福田网站定制设计、自适应品牌网站建设、H5响应式网站、商城建设、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为福田等各大城市提供网站开发制作服务。然后各种查资料个尝试,做了三个小案例:
一、获取文字数量*文字宽度去计算
虽然说这个方法代码量比较少,但是在不同的字体中还是有一定的误差的,所以建议不要使用,但是分享的角度来讲,我还是拿出来写一写。
这个方法对于中文还是可以的,但是一般遇到中英文混合就不行了,所以如果是中英文混合的input我建议放弃。
二、利用scrollWidth来制作一个边长的(变不了短)
这个是有缺陷的,因为我们获取的是scrollWidth指,所以他只能获取最长的,而不能获取文字不撑开的时候的长度。
咱们直接贴代码把
三、文本比较法,这个方法虽然比较繁杂,但是无论误差还是可行性都是高的
咱们先来个布局:
其实JQ和原生JS一样的道理,如果你使用JQ的直接拿走就可以了,如果是原生的按照这个想法写就可以了。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。