2016-02-12 201 views
0

我有下面的標記,我試圖運行一個JavaScript函數一旦點擊。到目前爲止,我還沒有面臨任何成功。 PLZ的幫助 -elementByClassName上的JavaScript onclick事件

<div class='color-bar'></div> 
<div class='color-bar'></div> 
<div class='color-bar'></div> 
<div class='color-bar'></div> 

var ColorBars = document.getElementsByClassName("color-bar"); 
var charts = $("#line-container").highcharts(); 
var series; 
var colorIndex = new Array(); 

for(var i = 0; i < ColorBars.length; i++){ 

    ColorBars[i].onclick = function(){ 
     hideColor(i); 
    } 
} 

function hideColor(index){ 
    var charts = $("#line-container").highcharts(); 

    var series = charts.series[index]; 

    if(series.visible){ 
     series.hide(); 
    } 
    else{ 
     series.show(); 
    } 
} 

我遇到的問題是搞清楚哪個色條用戶點擊。它是第一個,第二個還是第三個?基於此,我需要觸發hideColor函數。

非常感謝。最好的問候,jahid

+0

你可以使用'hideColor($(本)的.index() );'而不是'hideColor(i);'。有人已經發布了一個答案,試圖指出,但刪除它。無論如何,這應該有助於解決這個問題。 – Xufox

回答

-1

你需要給你colorbars IDS:

<div class='color-bar' id="colorbar1"></div> 
<div class='color-bar' id="colorbar2">></div> 
<div class='color-bar' id="colorbar3">></div> 
<div class='color-bar' id="colorbar4">></div> 

然後你可以檢查:

ColorBars[i].id == X