2

この問題についてスタック上の多くのスレッドを読みましたが、何も問題を解決できません。ページがロードされたときに最初は非表示になっているタブに Google マップがあり、サポートをお願いします。完全なコードは次のとおりです。

<script type="text/javascript"> 
  function loadsinglemap(){
  var mymap = new MeOnTheMap({
  container: "map_sidebar2",
  html: "<?php echo str_replace('"',"",$post->post_title); ?>",
  address: "<?php echo str_replace('"','',get_post_meta($post->ID, "map_location", true)); ?>",
  zoomLevel: 15,

  });                        
  } 

 jQuery(document).ready(function() {   loadsinglemap();  })

 </script>

This is on the page where the map is displayed:

<script type="text/javascript">
$(document).ready(function(){
$('a.contact').click(function(){
google.maps.event.trigger(mymap, 'resize');
});
});
</script>

私はそれを機能させることができません。誰かが助けになるものを見たら、返信してください。ありがとう

編集:要素セレクターをクラスに変更し、ID の代わりにクラスへのリンクを変更し、少なくともそれを取得するようになりました。firebug で「mymap が定義されていません」というエラーが発生します。

4

3 に答える 3

5

div を再表示した後、initilize() 関数をもう一度呼び出します。私はそれをやった、それは働いた。 JSFiddle

于 2015-10-01T09:40:46.473 に答える
1

divを非表示にする代わりに、高さ/幅を0pxに設定しました。オーバーフローを非表示に設定します。

それがあなたに役立つことを願っています:)

于 2012-11-21T00:47:56.153 に答える
-2

ここで Roosko の回答を確認してください https://groups.google.com/forum/#!topic/google-maps-js-api-v3/aUrVnx-i7LI、それは私にとってはうまくいきます!

モーダルが定義されたサイズを取得する前にマップが読み込まれるため、サイズはゼロとしてレンダリングされます。

<a href="#?w=500" rel="popup2" class="poplight" onClick="initialize()">
    <img src='images/location1.png' title='Location' alt='images/location2.png' />
</a> 

initilize()ポップアップがクリックされたときに関数を呼び出しました。

于 2014-01-22T16:39:56.857 に答える