我在文本区域使用Ace编辑器进行突出显示。我有自己的tokenizer而不使用正则表达式。令牌化程序位于服务器端,并使用http调用进行调用。现在我想做的是突出显示我从服务器获得的每个令牌。我尝试使用addMarker函数来突出显示每个标记但不起作用。以下示例代码,
highlightToken = function(token) {
var
aceRange = ace.require('ace/range').Range,
row = editor.selection.lead.row, // editor is my ace editor
adjAceRange = new aceRange(row, token.position - 1 , row, token.position + token.length),
styleClass = token.type;
editor.session.addMarker(adjAceRange, styleClass, "text", true);
}
在我的CSS中,
.styleClass {
position:absolute;
color: blue;}
令牌的颜色不会改变。但是如果我在css中添加background属性,则会更改令牌的背景。我错过了什么吗?