Googleマップといくつかのテキストボックスを含むhtmlページを作成しました。 私はまた、このページをphpのインクルード関数を使ってインクルードした別のページを作成しました。jQueryでphp includeとhide/showを使用しているときにGoogleマップが表示されない
<div id="map">
<?php include 'myMap.html'; ?>
</div>
ページが読み込まれると、地図と他のアイテムが正しく読み込まれて表示されます。 今、マップが含まれている<div>
の可視性を切り替えるボタンを作成しました。最初は、jQueryのhide()関数を使用してマップを非表示にします。 ボタンをクリックすると、<div>
が再度表示されるはずです。これを実現するために、私はjQueryでshow()メソッドを呼び出しました。 ボタンをクリックすると、すべてがページに表示されますが、マップが表示されません。
この部分は別のhtmlページにあります。 含まれていると正しく表示されますが、非表示にするとボタンがクリックされて再び表示されると、マップは画像のようになります。別のアプローチを試みましたが、ボタンが呼び出された時点でマップをロードする関数を呼び出すと、役立つことがわかりました。別のhtmlファイルにあるその関数をインクルードされた関数に呼び出すことはできますか?
インクルードなしで正常に動作しますか?私はあなたがmyMap.htmlを直接使用して、予期したように動作するのでしょうか? –
ブラウザのdevツールのコンソールでエラーがないか確認してください。 – Badr
ページロード時にJSマップオブジェクトを作成しないでください。非表示のdivが表示された後でのみ行います。 – duncan