HTML5 mempunyai fitur yang berguna untuk menampilkan posisi baik longitude maupun latitude yang diberi nama Geolocation. Fitur ini dapat disematkan dalam aplikasi html5 untuk memudahkan para pengembang guna memperkaya dan berkreasi fasilitas yang akan ia bangun menggunakan HTML5. Menurut catatan penulis, sejak direkomendasikan oleh W3C pada Desember 2012, Bahasa pemrograman HTML5 banyak dipakai pengembang karena fungsi dan tagnya lebih develop friendly, dokumentasi lebih lengkap dan tentunya sangat modern.
HTML5 Geolocation by Google Maps
Sebagai eksperimen awal pengenalan untuk berkreasi dengan HTML5 Geolocation kombinasi Google Maps API, penulis akan memberikan slick tutorial untuk pembaca yang ingin secara mudah mengaplikasikan HTML5 Geolocation pada Google Maps guna mengetahui lokasi kota (dalam hal ini lokasi server). Berikut adalah perangkat dan juga library javascript yang dibutuhkan untuk melakukan eksperimen pendukung tutorial HTML5 Geolocation ini :
Perangkat :
- Browser yang support : Mozilla Firefox versi 3.5 keatas, Google Chrome versi 5.0 keatas, Safari 5.0+ , IE 9.0 +
- Koneksi internet untuk memanggil library Google API online.
Library :
- Google Maps Online API
- Jquery Library
- Google Font API (Opsional)
Tutorial
- Masuk folder localhost, dan buatlah folder bernama html5geolocation
- Buat dua file yaitu index.html dan style.css + download background pendukung disini
- Berikut adalah file index.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<meta charset=utf-8> | |
<meta name=”viewport” content=”width=device-width, initial-scale=1, maximum-scale=1“> | |
<title>HTML5 Geolocation</title> | |
<script type=”text/javascript” src=”http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js“></script> | |
<link href=”http://fonts.googleapis.com/css?family=Open+Sans+Condensed:700,300” rel=”stylesheet” type=”text/css“> | |
<link href=”style.css” rel=”stylesheet” type=”text/css“> | |
<body> | |
<section id=”wrapper“> | |
<header> | |
<h1>HTML5 Geolocation Untuk Mengecek Lokasi</h1> | |
</header> | |
<meta name=”viewport” content=”width=device-width, initial-scale=1, maximum-scale=1” /> | |
<script type=”text/javascript” src=”http://maps.google.com/maps/api/js?sensor=false“></script> | |
<article> | |
<span id=”button“><a href=”#” id=”ahref“>Klik</a></span><br> | |
<span id=”status“></span> | |
</article> | |
<script> | |
$(“#button”).click(function() { | |
function success(position) { | |
var s = document.querySelector(‘#status’); | |
if (s.className == ‘success’) { | |
// not sure why we’re hitting this twice in FF, I think it’s to do with a cached result coming back | |
return; | |
} | |
s.innerHTML = “Lokasi telah ditemukan”; | |
s.className = ‘success’; | |
var mapcanvas = document.createElement(‘div’); | |
mapcanvas.id = ‘mapcanvas’; | |
mapcanvas.style.height = ‘400px’; | |
mapcanvas.style.width = ‘560px’; | |
document.querySelector(‘article’).appendChild(mapcanvas); | |
var latlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude); | |
var myOptions = { | |
zoom: 15, | |
center: latlng, | |
mapTypeControl: false, | |
navigationControlOptions: {style: google.maps.NavigationControlStyle.SMALL}, | |
mapTypeId: google.maps.MapTypeId.ROADMAP | |
}; | |
var map = new google.maps.Map(document.getElementById(“mapcanvas”), myOptions); | |
var marker = new google.maps.Marker({ | |
position: latlng, | |
map: map, | |
title:“Anda ada di radius “+position.coords.accuracy+“)” | |
}); | |
} | |
Input your search keywords and press Enter. |