1

一連のフュージョン テーブル レイヤーを作成し、チェックボックスのクリック イベントに応じてレイヤーの 1 つにフィルターを適用しました。マップのベース レイヤーには、郡の境界に適用されたグラデーションが含まれています。ベース レイヤーのチェックを外すと、フィルタリングされたレイヤーのスタイリングが失われます。キャッシュを避けるためにすべてのクエリに一意のタイムスタンプを追加しましたが、この状況ではこれらの画像タイルがまだキャッシュされているように感じます。Google Fusion Tables API にキャッシュされた画像を強制的に無効にする方法はありますか?

テスト サイトはこちら: http://map.inquestmarketing.com/new.html

Other -> Consumer Prospects チェックボックスをオフにすると、問題が再現されます。

これは純粋なクライアント アプリで、すべてのソースが 1 つのページにあります。

アップデート

FusionTablesLayer クライアント側にスタイル フィルターを適用することで、これを回避できました。

3 つの異なるケースをフィルター処理しましたが、全体にスタイルを適用するには、次の方法を使用できます。

スタイル: [{ markerOptions: { iconName: "large_blue" } }]

FusionTablesLayer コンストラクターと setOptions 関数で。

これが他の誰かに役立つことを願っています!

4

3 に答える 3

0

問題は、マップ上のコーディングの問題です。その (Consumer Prospects) チェック ボックスに基づいて、このレイヤーを非表示にします。表示したい場合は、非表示にせずに非表示のままにしてください。青いマーカーがそれに合う理由がわかりません。

于 2012-11-26T23:01:32.937 に答える
0

Google の Kathryn によると、タイム スタンプを追加することでタイルを更新できます。これは、ニーズに合わせて使用​​または適応できる jQuery スニペットです。

setTimeout(function(){
       $("img[src*='googleapis']").each(function(){
               $(this).attr("src",$(this).attr("src")+"&"+(new Date()).getTime());
       });
},3000);

ソース: https://groups.google.com/forum/#!msg/fusion-tables-users-group/wCLHnyoZRYk/MtLHFZ-o4zAJ

于 2013-04-05T21:20:36.210 に答える
0

とにかくタイルデータのキャッシュを防ぐ方法はないと思います。Fusion Table は Google サーバーでタイル画像をレンダリングするため、通常は少し時間がかかります。

また、ほとんどのブラウザーは、FusionTableLayer (つまり Javascript) によって生成された URL に基づいて画像をキャッシュします。

于 2012-11-26T22:28:03.380 に答える