Im使用mark.js突出显示正面和负面的语句,例如,
“我是香蕉”
对比
“我不是香蕉”
我怎样才能避免在“不是香蕉”这个词中添加积极类呢?(如用红色表示“不是香蕉”)
用instance.markRegExp函数寻找一个解
var instance = new Mark(".bananas");
//negative
instance.markRegExp(/not a banana/g, {
className: "negative"
});
//positive
instance.markRegExp(/a banana/g, {
className: "positive"
});mark{
background: white;
}
.positive {
color: green;
}
.negative {
color: red;
}<script src="https://cdn.jsdelivr.net/mark.js/8.8.3/mark.min.js"></script>
<div class="bananas">
i am a banana. <br> i am not a banana.
</div>
发布于 2019-08-11 05:02:50
我不太确定这是否是正确的解决办法,但它是有效的。
在您的示例中,所发生的情况是这两个类都应用于结果。
所以你可以通过在CSS中添加一个规则来解决这个问题,这意味着如果正数在内部,则显示为负面。
.negative,
.negative .positive{
color: red;
}
var instance = new Mark(".bananas");
//negative
instance.markRegExp(/not a banana/g, {
className: "negative"
});
//positive
instance.markRegExp(/a banana/g, {
className: "positive"
});mark{
background: white;
}
.positive {
color: green;
}
.negative,
.negative .positive{
color: red;
}<script src="https://cdn.jsdelivr.net/mark.js/8.8.3/mark.min.js"></script>
<div class="bananas">
i am a banana. <br> i am not a banana.
</div>
https://stackoverflow.com/questions/57447435
复制相似问题