javascript - 按条件为 contenteditable div 文本字段中的字母着色

标签 javascript html css meteor

我想为内存游戏创建一个输入字段,其中每个正确的字母(明文)显示为绿色,每个不正确的字母在输入字段中显示为红色。

必须输入的单词以字符串形式提供,因此我可以将输入与解决方案进行比较。

如何根据错误(红色)或正确(绿色)使输入字段中的每个字母具有不同的颜色?

我找到了 this solution对于随机颜色,但我并没有真正转移到我的案例中。

最佳答案

不幸的是,没有简单、优雅的方法来实现您想要的。我所说的优雅是指 CSS。 (有 ::first-letter 伪元素,但没有 ::n-th-letter :( 这可能会打开很多可能性)。最好的办法是用 span 包裹每个字母,然后给它们涂上颜色根据一定的条件。

<span>a</span><span>b</span><span>c</span><span>d</span>

var word = 'abcd';
var matches = [0, 1, 1, 0];

$(document).ready(function() {
  for(var i = 0; i <= word.length; i++){
    $("span").eq(i).css('color', matches[i] ? 'green':'red');
  };
});

Check it out on jsfiddle .

关于javascript - 按条件为 contenteditable div 文本字段中的字母着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37355862/

相关文章:

javascript - 在 ThreeJS 中结合 THREE.ShaderLib.phong 和次表面散射

css - 为什么我的行内 block 元素一直在换行?

javascript - 我可以让这个 jQuery 工具提示在我的光标悬停在它上面时保持亮起吗?

javascript - 如何有效地从 webgl 属性缓冲区的中间删除三 Angular 形

javascript - 同时迭代和替换跨度

javascript - AngularJS 范围没有注意到变化

jquery - 如何让李父被李子推倒(手机导航)

javascript - 尽管刷新,jQuery 格式仍不适用于 ajax 数据

html - 选中的复选框不会改变 css

html - 3D光影效果纸样造型