2
我試圖使用該元素來繪製屏幕上顯示的靜態Google地圖圖像,一旦用戶單擊提交按鈕。在HTML看起來像這樣:畫布圖像直到第二次嘗試才顯示
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<script type="text/javascript"
src="https://maps.googleapis.com/maps/api/js?key=MYKEY&sensor=true">
</script>
<script type="text/javascript" src="createmap.js">
</script>
</head>
<body>
<form onsubmit="display_map(34.1,-76.08168); return false;">
<input type="submit" value="Submit"/>
</form>
<canvas id='map-canvas' />
</body>
</html>
而且在createmap.js的display_map()函數:
function display_map(center0, center1) {
var image = new Image();
image.src = 'http://maps.googleapis.com/maps/api/staticmap?center='
+ center0 + ',' + center1 + '&zoom=13&size=800x800&sensor=false';
var canvas = document.getElementById('map-canvas');
var context = canvas.getContext('2d');
context.drawImage(image, 0, 0);
}
的第一次用戶點擊提交按鈕,沒有任何反應。然而,隨後的每次點擊都會加載圖像(即使該標籤已關閉然後重新打開)。更改center0
和center1
參數將重置頁面,並再次強制兩次點擊來顯示Google生成的新圖像。此行爲似乎不是來自Google地圖,因爲當我從我的硬盤加載圖像時發生同樣的問題。在我測試的每個瀏覽器(Firefox,IE和Chrome)中都會發生這種情況。
This Works。謝謝! –