首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果我开始用星号或选定的字母书写,如何定义搜索字段中的文本颜色?

问如果我开始用星号或选定的字母书写,如何定义搜索字段中的文本颜色?
EN

Stack Overflow用户
提问于 2020-05-23 08:13:18
回答 1查看 105关注 0票数 0

使用这个js代码,我们可以在以星号开头时隐藏div,或者在以字母或其他符号开头时显示div。当我用星号开始的时候,我需要改变我写的文字的颜色。也就是说,如果我以一个或多个字母开头,div出现在下面,并保持黑色,但是如果我以星号开头,div不会出现,而是显示星号,我写的下列单词必须以绿色显示。

https://jsfiddle.net/z6cgxjek/

​

代码语言:javascript
复制
    $('#search').keyup(function(event) {
    $('#hello').show();    
    if(!event.target.value.trim() || event.originalEvent.charCode === 42 || event.target.value.startsWith("*")) {
      $('#hello').hide();
    } else {
      $('#hello').show();
    }
});
代码语言:javascript
复制
#hello {
  display:none;
}
代码语言:javascript
复制
<input id="search" autocomplete="off"/>
<div id="hello" >Hello World!</div>

​

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-23 08:17:12

您可以尝试使用获取/设置一个或多个CSS属性。在这里,我更喜欢输入事件而不是keyup:

​

代码语言:javascript
复制
$('#search').on('input', function(event) {
  $('#hello').show();    
  if(!event.target.value.trim() || event.originalEvent.charCode === 42 || event.target.value.startsWith("*")) {
    $('#hello').hide();
    $(this).css({color: 'green'});
  } else {
    $('#hello').show();  
    $(this).css({color: ''});
  }
});
代码语言:javascript
复制
#hello {
  display:none;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="search" autocomplete="off"/>
<div id="hello" >Hello World!</div>

​

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61969242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档