【问题标题】:Javascript iterative highlightJavascript 迭代高亮
【发布时间】:2015-07-09 07:15:32
【问题描述】:

我试图让下面的代码始终使用我拥有的颜色数组中的颜色突出显示 var s2。在第一次迭代中,我希望它为 var s2 着色为“DarkSalmon”,在第二次迭代中,我希望它为 var s2 着色为“ForestGreen”,依此类推。出于某种原因,它没有这样做。有人请帮帮我。我在这里错过了什么?

var text =  obj[0].srcLanguageSentence.text;

var strArry = [];  
var colorArr = ["DarkSalmon", "ForestGreen", "Brown"];
for(var i=0; i<obj[0].srcLanguageSentence.roles.length; i++)
{

    // create variables representing substrings of the Source language Sentence
    var s1 = text.substring((obj[i].srcLanguageSentence.roles[i].beginOffset - obj[i].srcLanguageSentence.roles[i].beginOffset),(obj[i].srcLanguageSentence.roles[i].beginOffset - 1));
    var s2 = text.substring(obj[i].srcLanguageSentence.roles[i].beginOffset,obj[i].srcLanguageSentence.roles[i].endOffset);
    var s3 = text.substring(obj[i].srcLanguageSentence.roles[i].endOffset,obj[i].srcLanguageSentence.text.length);

    strArry.push('<h4>'+s1+'</h4>')
    //strArry.push('<h4>'+'<font color='"+colorArr[i]+"'>"+s2+'</font>'+'</h4>')

    if(i == obj[0].srcLanguageSentence.roles.length-1)
    {
        strArry.push('<h4>'+s3+'</h4>');
    }

    text =  s3;
}

【问题讨论】:

  • 你没有在任何地方使用colorArr,你把它注释掉了。

标签: javascript arrays json for-loop


【解决方案1】:

你在这部分有错误。

strArry.push('<h4>'+'<font color="'+colorArr[i]+'">"'+s2+'</font>'+'</h4>');

另外,我假设这些是您要附加到 DOM 的节点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-21
    • 1970-01-01
    • 2019-06-13
    • 2010-09-14
    • 1970-01-01
    • 2014-08-16
    相关资源
    最近更新 更多