Javascript 使用输入文本占位符在大写和普通文本之间切换

Javascript 使用输入文本占位符在大写和普通文本之间切换,javascript,jquery,css,Javascript,Jquery,Css,当输入必须是大写时,有没有更好的方法让占位符使用常规大小写?如果可能的话,我想在现代浏览器中完全使用CSS3 原因是当我切换回小写时,在添加或删除大写时似乎有点复杂,然后占位符显示为常规文本。有一些模式,但它不适用于切换到大写的用户输入和切换回常规的占位符大小写 输入: 参考文献: jQuery On function,ButtanGPHP等,可在www.5/22/2015上找到 使用CSS更改输入的HTML5占位符颜色,David Murdoch等人,见www.5/22/2015 HTML输入

当输入必须是大写时,有没有更好的方法让占位符使用常规大小写?如果可能的话,我想在现代浏览器中完全使用CSS3

原因是当我切换回小写时,在添加或删除大写时似乎有点复杂,然后占位符显示为常规文本。有一些模式,但它不适用于切换到大写的用户输入和切换回常规的占位符大小写

输入:

参考文献:

  • jQuery On function,ButtanGPHP等,可在www.5/22/2015上找到
  • 使用CSS更改输入的HTML5占位符颜色,David Murdoch等人,见www.5/22/2015
  • HTML输入属性(模式),W3School Auth unk,5/22/2015

  • 如果您不想在每个浏览器中都使用它,只需为占位符设置不同的
    文本转换

    输入{
    文本转换:大写;
    }
    :-webkit输入占位符{
    文本转换:无;
    }
    :-moz占位符{
    文本转换:无;
    }
    :-moz占位符{
    文本转换:无;
    }
    :-ms输入占位符{
    文本转换:无;
    }
    <input name="myInputText" data-case="UPPER" data-placeholder-case="regular" pattern="[A-Z]*" type=text placeholder="You will be FORCED to use UPPERCASE!" />
    
    $("myInputText").on("keydown", function() {
     if ($("myInputText").val().length > 0)
     {
      $("myInputText").val("myInputText").val().toUpperCase());
      $("myInputText").css("text-transform", "uppercase");
     } else { $("myInputText").css("text-transform", ""); }
    }).on("change", function() {
     if ($("myInputText").val().length > 0)
     {
      $("myInputText").val("myInputText").val().toUpperCase());
     } else { $("myInputText").css("text-transform", ""); }
    });