Wiele wystąpień Google Wizualizacje Wykres wewnątrz oddzielnych Div

Próbuję pokazać kilkaWykresy Google Gauge w oddzielnych divach na tym samym ekranie. Muszę także obsługiwać zdarzenie click w tych divach (w konsekwencji wykresy). Próbowałem to robić dynamicznie, ale miałem pewne problemy. Ale mimo to, nawet gdy próbowałem to zrobić statycznie (co zadziałało), nadal nie mogłem uzyskać klikalności obszaru wykresu. Stało się tak, że cały div jest klikalny, z wyjątkiem obszaru wykresu.

W każdym razie, oto mój kod (bałagan - test):

<div id="gaugePlaceHolder" class="gaugeWrapper"></div>
<div id="gaugePlaceHolder2" class="gaugeWrapper"></div>

document.getElementsByClassName = function (cl) {
    var retnode = [];
    var myclass = new RegExp('\\b' + cl + '\\b');
    var elem = this.getElementsByTagName('*');
    for (var i = 0; i < elem.length; i++) {
        var classes = elem[i].className;
        if (myclass.test(classes)) retnode.push(elem[i]);
    }
    return retnode;
};


  google.load('visualization', '1', {packages:['gauge']});
  google.setOnLoadCallback(function () {
      drawChart1();
      drawChart2();
  });
  function drawChart1() {
    var data = google.visualization.arrayToDataTable([
      ['Label', 'Value'],
      ['Memory', 80]
    ]);

    var options = {
      width: 400, height: 120,
      redFrom: 90, redTo: 100,
      yellowFrom:75, yellowTo: 90,
      minorTicks: 5
    };

  var chart = new google.visualization.Gauge(document.getElementById('gaugePlaceHolder'));
    chart.draw(data, options);
}

function drawChart2() {
    var data = google.visualization.arrayToDataTable([
      ['Label', 'Value'],
      ['Another', 30]
    ]);

    var options = {
        width: 400, height: 120,
        redFrom: 90, redTo: 100,
        yellowFrom: 75, yellowTo: 90,
        minorTicks: 5
    };

    var chart = new google.visualization.Gauge(document.getElementById('gaugePlaceHolder2'));
    chart.draw(data, options);
}

window.onload = function () {
    var elements = $('.gaugeWrapper');
    console.log(elements);
    elements.click(function () {
        alert("clicked");
    });
}

Jakieś wyjaśnienia / sugestie?

questionAnswers(1)

yourAnswerToTheQuestion