ここでjquery モバイル Google マップ キャンバスを作成するためのチュートリアルに従い、設定を試みましたが、JavaScript コンソールで次のエラーが表示されます。
キャッチされていない TypeError: 未定義のメソッド 'apply' を呼び出せません
コールバックがどこかにないのではないかと思いますが、それを見つけることができません。だれかポインタを教えてもらえますか?
これは、ページが示すようにマップを初期化して表示する方法です。これは正常に機能し、マップをパン/ズームできます。
$('#map_canvas').gmap({ 'center': latLon,'scrollwheel':false});
$('#map_canvas').gmap('option', 'zoom', 12);
$('#map_canvas').gmap().bind('pageshow', function(ev, map){
$('#map_canvas').gmap('addMarker', {'position':latLon, 'bounds':false}).click(function(){
$('#map_canvas').gmap('openInfoWindow', {'content':myAddress}, this);
});
});
そして、HTML ページに次のフィールドがあります。
<p>
<label for="from">From</label>
<input id="from" class="ui-bar-c" type="text" value="Los Angeles" />
</p>
<p>
<label for="to">To</label>
<input id="to" class="ui-bar-c" type="text" value="New York" />
</p>
<a id="submit" href="#" data-role="button" data-icon="search">Get directions</a>
<div id="map_canvas" style="width:100%;height:300px"></div>
<div id="results" class="ui-listview ui-listview-inset ui-corner-all ui-shadow" style="display:none;">
<div class="ui-li ui-li-divider ui-btn ui-bar-b ui-corner-top ui-btn-up-undefined">Results</div>
<div id="directions"></div>
<div class="ui-li ui-li-divider ui-btn ui-bar-b ui-corner-bottom ui-btn-up-undefined"></div>
</div>
onclick は、次の JS 関数にバインドします。
function getDirections()
{
$('#map_canvas').gmap('displayDirections', { 'origin': 'Los Angeles, USA', 'destination': 'New York, USA', 'travelMode': google.maps.DirectionsTravelMode.DRIVING }, { 'panel': document.getElementById('panel') }, function(result, status) {
if ( status === 'OK' ) {
alert('Results found!');
}
});
}