2016-03-18 2 views
0

Я пытаюсь создать несколько простых визуализаций с помощью flotr. Однако, когда я пытаюсь указать Div контейнер для диаграммы я получаю сообщение об ошибке сказав:Flotr2 не может видеть объект jQuery

Uncaught Мишень контейнер должен быть visibleGraph._setEl @ flotr2.min.js: 27Graph @ flotr2.min.js: 27n .draw @ flotr2.min.js: 27 (анонимная функция) @ lines.html: 25i @ jquery.min.js: 2j.fireWith @ jquery.min.js: 2n.extend.ready @ jquery.min. JS: 2K @ jquery.min.js: 2

Эта работа, однако, когда я изменить селектор JQuery $("#chart") в document.getElementById("chart"). В основном, когда я использую ванильный JavaScript, он работает, но когда я переключаюсь на jQuery, он терпит неудачу.

Упрощенный отдых внизу.

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
     <meta charset="utf-8"> 
     <title></title> 
     <script src="JS_libs/flotr2.min.js"></script> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> 
    </head> 
    <body> 
     <div id='chart' style="width:600px;height:300px;"></div> 
     <!--[if lt IE 9]><script src="js/excanvas.min.js"></script><![endif]--> 

     <script> 
      $(function() { var co2 = [ 
      [ 1959, 315.97 ], 
      [ 1960, 316.91 ], 
      [ 1961, 317.64 ], 
      [ 1962, 318.45 ]]; 
      var temp = [ 
      [ 1959, 0.0776 ], 
      [ 1960, 0.0280 ], 
      [ 1961, 0.1028 ], 
      [ 1962, 0.1289 ]]; 

      Flotr.draw(
      $("#chart"), 
      [{ data: co2, lines: {show:true} }] 
      );}); 
     </script> 

    </body> 
</html> 

Если я изменю $("#chart") к document.getElementById("chart"), это работает. Но я хотел бы использовать способ jQuery.

ответ

0

Чтобы получить собственный объект JS из JQuery вы должны использовать [0]:

Flotr.draw(
    $("#chart")[0], 
    [{ data: co2, lines: {show:true} }] 
);}); 
Смежные вопросы