[英]autocapitalize=“none” doesn't work for <input type=“search”> in Firefox on Android
[英]Why doesn't the autocapitalize attribute work with non-virtual keyboards?
我刚刚发现我们可以使用这个属性来指定应该输入字母的大小写,但这对我不起作用。
例子:
<input type="text" autocapitalize="words" name="subject" value="Website Feedback" />
我将这个 attr 设置为单词,但仍然使用情人大小写输入每个新单词,那么它应该如何工作?
正如评论中的许多人指出的那样,该属性不会影响物理键盘。 您可以使用 javascript 实现此目的,方法是侦听 keyup 事件并在每次更改时将文本大写。 这是一个工作示例:
$(".autocapitalize").keyup(function () { const originalValue = $(this).val(); const capitalizedValue = originalValue.replace(/(^\w{1})|(\s+\w{1})/g, letter => letter.toUpperCase()); $(this).val(capitalizedValue).focus() });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type="text" class="autocapitalize" autocapitalize="words" name="subject" value="" />
似乎有些浏览器没有更多地考虑这个属性,“autocapitalize 属性不影响在物理键盘上打字时的行为”。
https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autocapitalize
也许您应该改用 function。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.