4

Google Fusion Tables を使用して、私の大学の人々が世界の健康に関して発表した学術雑誌の記事の数を示すマップを作成しています。現在、国/ポリゴンをクリックするとポップアップ バブルが表示され、国の名前と各国について公開された論文の数が Fusion Table でスタイル設定されています。

私が望んでいるのは、国をクリックすると、サイドバーが更新され、それぞれの記事の要約へのリンクが表示されるようにすることです。たとえば、フランスをクリックすると、12 の著者名と記事のタイトル (リンク付き) がサイドバーに表示されます。

国をクリックしたときにフュージョン テーブルから国の名前を取得する方法があることを願っています。国名を取得したら、関数を呼び出してサイドバーのテキストを入れ替え、適切な情報に置き換えたいと考えています。関数を別のjavascriptファイルに保存し、htmlファイル内から呼び出すことを望んでいました。

参照情報を読みましたが、クリックされた対応するポリゴンからセル値を保存する方法を見つけることができませんでした。

Javascript ファイルは今のところ単なるモックアップですが、理想的には、サイドバーに入力するデータが保存される場所です。

自分が達成しようとしていることを明確にしていますか? 私は明確で詳細を提供しようとしました。

私は新しいメンバーなので、Stack Overflow では 2 つのリンクしか貼り付けることができません。マップとフュージョン テーブルは次のとおりです。

地図: https://mywebspace.wisc.edu/csterling/web/practice%202.html

フュージョン テーブル: https://www.google.com/fusiontables/DataSource?snapid=S501306uxNU

参照したい Javascript ファイルには、次のような関数が含まれています。

function argentina() {
    document.getElementById("textDescription").innerHTML = "Articles Published: Curing diseases with indigenous knowledge by John So-and-so, etc";
};
4

2 に答える 2

3

これが私の問題を解決するために私がしたことです。助けてくれたChrisK.に感謝します!

google.maps.event.addListener(layer,'click',function(e) {
    var countryName = e.row['SOVEREIGNT'].value;
    if (countryName == 'Argentina'){
        argentina();
    }
});
于 2012-05-24T19:59:18.137 に答える
1

wisc.edu の URL が表示されたので、マディソンからこんにちは...

フュージョン テーブル レイヤーでクリック イベントを使用すると、テーブルにクエリが実行され、ページ要素にデータが書き込まれます。

クリックされた行のセルの値を取得するために模倣できるいくつかの異なるスニペットを次に示します。それぞれが基本的に同じことを達成します。

//click listener on layer using jquery
google.maps.event.addListener(layer, 'click', function(e) {
    $("#dem-votes").html(
        '<p><strong>Percent:</strong> ' + e.row['Dem County Percent'].value +
        '<br><strong>Votes:</strong> ' + e.row['Dem County Votes'].value +
        '<br><strong>Vote Margin: </strong>' + e.row['Dem County Margin'].value + '</p>');
});


//click listener on layer using js
google.maps.event.addListener(layer, 'click', function(e) {
    document.getElementById('dem-votes').innerHTML =
        '<p><strong>Percent:</strong> ' + e.row['Dem County Percent'].value +
        '<br><strong>Votes:</strong> ' + e.row['Dem County Votes'].value +
        '<br><strong>Vote Margin: </strong>' + e.row['Dem County Margin'].value + '</p>';
});

キーは基本的に e.row['Dem County Percent'].value で、クリックされた行の特定の列 (この場合は Dem County Percent) の値です。

最後の例を使用してマップを作成しました。動作するようです...

クリス K.

于 2012-05-17T05:26:16.863 に答える