2013-04-20 61 views
0

这里是我的代码中拉从一个函数值:的Javascript需要一个数组

<script> 
window.addEvent('domready', function(){ 

    new Request.Stocks({ 
     stocks: ['SXCL'], 
     onComplete: function(yahoo){ 
      var result = ''; 
      Array.each(Array.from(yahoo.query.results.quote), function(quote){ 
result += '<div class="company-ticks"></div> 
<span class="company">Steel Excel ({Name})</span> 
<span class="sub-info"> - OTC Markets<span> </div> <div><span class="value"> 
{LastTradePriceOnly}</span><span class="changeup"> 
<img src="change-up.gif" class="change-img" />{Change} 
({ChangeinPercent})</span></div></div>'.substitute(quote); 
      }, this); 

      $('stocks').set('html', result); 
     }, 
     onRequest: function(script){ 
      $('stocks').set('text', 'Loading...'); 
     } 
    }).send(); 

    // Request.Stocks.element.js 


}); 

</script> 

你看,我有自己的变量{变化。我需要确定这个变量是正值还是负值。如果是肯定的,那么它应该将该类显示为“changeup”,将图像显示为change-up.gif。如果该值为负值,则显示的类应该“变为”并且图像将变为下变换。

图像是绿色的向上箭头和向下的红色箭头。这些课程在红色和绿色之间进行颜色交替。

因为这是在使用函数调用的数组内,所以我不知道该如何去做。我想我必须将我的“结果”分成三部分。之前的部分,设置类和图像的部分,以及结果的其余部分。

任何帮助,将不胜感激。

这使用JavaScript和mooTools。这是从雅虎拉股票报价。

回答

2

我假定Change变量是quote对象的属性。否则,这是在代码下面的一个简单的修复。

Array.each(Array.from(yahoo.query.results.quote), function (quote) { 
    quote.changeImage = (quote.Change > 0) ? 'change-up.gif' : 'change-down.gif'; 

    result += '<div class="company-ticks"></div> 
<span class="company">Steel Excel ({Name})</span> 
<span class="sub-info"> - OTC Markets<span> </div> <div><span class="value"> 
{LastTradePriceOnly}</span><span class="changeup"> 
<img src="{changeImage}" class="change-img" />{Change} 
({ChangeinPercent})</span></div></div>'.substitute(quote); 
}, this); 

请注意,生产HTML是你有点冒险和难以维护。

相关问题