提交表格后更改占位符颜色



根据以下方式:用CSS更改HTML5输入的占位符颜色更改的代码占位符颜色为:

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color:    #909;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color:    #909;
   opacity:  1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
   color:    #909;
   opacity:  1;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
   color:    #909;
}

此代码真的很好,效果很好。但是,我有一个小问题。当有人单击"提交"时,我想更改占位符的颜色(唯一的问题是在JS上更改它的功能...其他一切正常)。这就是我尝试使用JS的方法:

$("#email").css('::-webkit-input-placeholder', 'red');
$("#email").css(':-moz-placeholder', 'red');
$("#email").css('::-moz-placeholder', 'red');
$("#email").css(':-ms-input-placeholder', 'red');

它对我不起作用...我应该更改修复它?我想这很小,但是我无法修复...任何建议?

,而不是使用JS更改CSS,可以在表单上添加类&将您的属性继承到其中。当有人提交表格时,您的表格标签上的 addClasstoggleClass之类的东西。

JS:

$('.form-btn').on('click', function(e) {
  e.preventDefault();
  $(this).parent().closest('form').toggleClass('submit-form');
});

CSS(使用.submit-form类继承):

form.submit-form ::-webkit-input-placeholder {
  /* WebKit, Blink, Edge */
  color: red;
}
form.submit-form :-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: red;
  opacity: 1;
}
form.submit-form ::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: red;
  opacity: 1;
}
form.submit-form :-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: red;
}

请查看下面的片段:

$('.form-btn').on('click', function(e) {
  e.preventDefault();
  $(this).parent().closest('form').toggleClass('submit-form');
});
input[type="email"] {
  display: block;
  font-size: 20px;
  margin-bottom: 10px;
}
::-webkit-input-placeholder {
  /* WebKit, Blink, Edge */
  color: #909;
}
:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #909;
  opacity: 1;
}
::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #909;
  opacity: 1;
}
:-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: #909;
}
form.submit-form ::-webkit-input-placeholder {
  /* WebKit, Blink, Edge */
  color: red;
}
form.submit-form :-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: red;
  opacity: 1;
}
form.submit-form ::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: red;
  opacity: 1;
}
form.submit-form :-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form class="" action="">
  <input type="email" placeholder="Enter Email" />
  <button class="form-btn">Submit (change placeholder color)</button>
</form>

希望这会有所帮助!

希望这有效!

$("#email").addClass('success');
.success::-webkit-input-placeholder {
  color: orange;
}
.success::-moz-placeholder{
  color: orange;
}
.success:-ms-input-placeholder{
  color: orange;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<input type="email" id="email" placeholder="email" />

相关内容

  • 没有找到相关文章

最新更新