Tôi có một số chức năng tạo biểu đồ khác nhau bằng API Google Charts.
Khi tôi gọi cho họ mà không cần phương thức $(document).ready
của jQuery, mọi thứ đều hoạt động tốt. Nhưng với phương pháp đó, tôi đang nhìn vào màn hình trống.
Tại sao?
<script type="text/javascript" src = "http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.js" charset="utf-8"></script>
<script type="text/javascript" src = "http://www.google.com/jsapi" charset="utf-8"></script>
function drawColumnChart1(){..some code..}
function drawColumnChart2(){..some code..}
function drawGeoChart(){.some code..}
//This works fine.
google.load("visualization", "1", {packages:["piechart", "corechart", "geomap"]});
google.setOnLoadCallback(window.drawColumnChart1);
google.setOnLoadCallback(window.drawColumnChart2);
google.setOnLoadCallback(window.drawGeoChart);
//This doesn't work
$(document).ready(function(){
google.load("visualization", "1", {packages:["piechart", "corechart", "geomap"]});
google.setOnLoadCallback(window.drawColumnChart1);
google.setOnLoadCallback(window.drawColumnChart2);
google.setOnLoadCallback(window.drawGeoChart);
});
CẬP NHẬT Đây là lỗi tôi nhận được trong Firebug:
uncaught exception: [Exception... "Could not convert JavaScript argument" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: http://www.google.com/jsapi :: Q :: line 20" data: no]
http://www.google.com/jsapi
Line 22
dường như $ (tài liệu) .ready xảy ra trước khi đối tượng google có sẵn và đó là lý do tại sao google.load không thành công bên trong $ (tài liệu) .ready hoặc một cái gì đó tương tự. ồ. – Stann