2010-03-06 79 views
3

由於谷歌可視化表/圖表中的elemnets在jQuery之前加載,所以我遇到了DOM問題。 因此,我意識到,我需要jQuery的。就緒()之前加載谷歌的可視化..在JQuery之前加載Google可視化

加載谷歌的可視化是通過做:

google.load("visualization", "1", {packages:["linechart","table","piechart"]}); 
google.setOnLoadCallback(drawGraph); 

我怎樣才能確保谷歌visualizaion裝載前運行.ready()函數?

感謝, 喬爾

回答

3

可以定義document.ready在函數內部,如果它已經準備好了,這樣它會觸發一個叫做時:

google.load("visualization", "1", {packages:["linechart","table","piechart"]}); 
google.setOnLoadCallback(myLoad); 

function myLoad() { 
    drawGraph(); 
    $(document).ready(function() { 
    //Stuff here 
    }); 
} 

應該這裏雖然注意,你可能根本不需要document.ready,你可以將這些內容粘貼在這個相同的函數中。

或者,您可以將drawGraph();呼叫作爲.ready()中的第一個呼叫。

+0

謝謝!奇蹟般有效。 至於替代解決方案,是否存在風險,如果我從我的.ready()中調用drawGraph(),谷歌包不能從谷歌加載嗎? – Joel 2010-03-07 06:20:05