在javascript中交替行颜色

时间:2015-06-10 10:34:12

标签: jquery css

我正在开发一个股票代码(慢慢但肯定,因为我正在学习javascript)

它似乎运作良好,我现在正试图设计自动收报机。

当前代码使用google finance来提取股票数据,html然后在div代码中返回。还有一个字幕滚动效果和一些CSS样式。我熟悉偶数和奇数css规则,这将使每个交替的表行变得不同,所以它更容易在眼睛上但我相信我需要在javascript中实现这一点,因为这是创建数据行的地方。 jquery不使用表,所以我对如何执行此操作有点不确定,我的所有尝试都失败了

我已将当前项目作为js小提琴和我想要实现的目标的一个例子

示例:http://www.w3.org/Style/Examples/007/evenodd.en.html

JS小提琴:https://jsfiddle.net/wLsy7zak/

var gstock = ["EPA:PIG","LON:AHT","NYSE:URI","NYSE:TEX" ,"NYSE:CAT", "NASDAQ:HEES",  "VIE:PAL" ];
$(document).ready(function () {
       for (var i = 0; i < gstock.length; i++) {
        $.getJSON("https://finance.google.com/finance/info?client=ig&q="+gstock[i]+"&callback=?", function (response) {
            var stockInfo1 = response[0];
            var divContainer =  $('*[data-symbol="' + stockInfo1.t +'"]');

            var stockString1 = '<div class="stockWrapper">' + divContainer.data('title') + ':';
            var stockName1 = stockInfo1.t;             
            var stockChange ="";
            stockString1  += '<span class="stockSymbol "> '  +  stockInfo1.t + ' </span>';
            stockChange += '<span class="stockPrice "> '  +  stockInfo1.l  + '</span>';
            stockChange += '<span class="stockChange "> '  +  stockInfo1.c + '</span>';
            stockString1 += stockChange + '</div>';
            $("#title").append("<div>" + divContainer.data('title') + "</div>");
            $("#symbols").append("<div><b>" + stockInfo1.t + "</b></div>");

            $("#liveData").append("<div>" + stockChange + "</div>");
            divContainer.append(stockString1);

        });
    }
});

我想问题是:如何让滚动滚动条替换行颜色,使其看起来更好。

感谢您的时间

2 个答案:

答案 0 :(得分:6)

可以使用CSS来解决这个问题:

marquee > div > div > div:nth-child(odd) {
  background: #eee;
}

但是,由于标记的性质,您的“细胞”之间会有间隙。您可以从列中删除填充并将其应用于单元格以消除白色间隙:

marquee > div > div > div {
    padding-right: 15px;
}

JSFiddle

答案 1 :(得分:0)

请参阅此jsfiddle

使用脚本&amp ;;检查这是否有助于您实现CSS 放入脚本

if(k%2){
           var cclass="redcolor";
       }else{
            var cclass="bluecolor";
       }
        k++;

就像在jsfiddle demo

中一样

并使用css设置特定类的样式