今天Google圖表出現問題,所以我們試圖在無法加載js文件的情況下優雅地失敗。以下工作正常:異步加載Google jsapi
<script type="text/javascript" src="https://www.google.com/jsapi?autoload=%7B%22modules%22%3A%5B%7B%22name%22%3A%22visualization%22%2C%22version%22%3A%221.0%22%2C%22packages%22%3A%5B%22corechart%22%5D%7D%5D%7D"></script>
問題是,它會阻止運行其他代碼,因爲它正在等待腳本超時。
以下載荷的代碼,
<script type="text/javascript">
$.ajax({
url: 'https://www.google.com/jsapi?autoload=%7B%22modules%22%3A%5B%7B%22name%22%3A%22visualization%22%2C%22version%22%3A%221.0%22%2C%22packages%22%3A%5B%22corechart%22%5D%7D%5D%7D',
dataType: 'script',
cache: true, // otherwise will get fresh copy every page load
success: function() {
google.load("visualization", "1", {packages:["corechart"]});
}
});
</script>
但錯誤,當我嘗試使用的可視化,如
var data = new google.visualization.DataTable();
是我在做什麼可能還是我們堅持的問題如果Google遇到問題,我們只能等待js文件超時並繼續前進?
謝謝!
對不起,新張貼的堆棧溢出。我以爲會給我發電子郵件。然後我忘記了這個問題。 不幸的是,drawChart代碼只發生在一些頁面上,稍後會發生,所以我不認爲這會起作用,除非我們在我們需要它之前嘗試加載腳本,這會減慢這些頁面的速度。 –