HTML5 menyediakan fungsi geolokasi (Geolocation API), yang boleh menentukan lokasi pengguna Kami boleh menggunakan ciri HTML5 ini untuk membangunkan aplikasi berdasarkan maklumat geolokasi. Artikel ini menggunakan contoh untuk berkongsi dengan anda cara menggunakan HTML5 dan menggunakan antara muka Baidu dan Peta Google untuk mendapatkan maklumat lokasi geografi pengguna yang tepat.
Geolokasi ialah ciri baharu HTML5, jadi ia hanya boleh dijalankan pada penyemak imbas moden yang menyokong HTML5, terutamanya peranti pegang tangan seperti iPhone, di mana geolokasi lebih tepat. Mula-mula kita perlu mengesan sama ada penyemak imbas peranti pengguna menyokong geolokasi, dan jika ya, dapatkan maklumat geografi tersebut. Ambil perhatian bahawa ciri ini mungkin melanggar privasi pengguna Melainkan pengguna bersetuju, maklumat lokasi pengguna tidak tersedia Oleh itu, apabila kami mengakses aplikasi, kami akan digesa sama ada untuk membenarkan geolokasi .
function getLocation(){ if (navigator.geolocation){ navigator.geolocation.getCurrentPosition(showPosition,showError); }else{ alert("浏览器不支持地理定位。"); } }
Kod di atas boleh mengetahui bahawa jika peranti pengguna menyokong geolokasi, kaedah getCurrentPosition() dijalankan. Jika getCurrentPosition() berjalan dengan jayanya, objek koordinat dikembalikan kepada fungsi yang dinyatakan dalam parameter showPosition Parameter kedua showError kaedah getCurrentPosition() digunakan untuk mengendalikan ralat .
Mari lihat dahulu fungsi showError(), yang menetapkan beberapa kaedah pengendalian kod ralat apabila gagal mendapatkan lokasi geografi pengguna:
function showError(error){ switch(error.code) { case error.PERMISSION_DENIED: alert("定位失败,用户拒绝请求地理定位"); break; case error.POSITION_UNAVAILABLE: alert("定位失败,位置信息是不可用"); break; case error.TIMEOUT: alert("定位失败,请求获取用户位置超时"); break; case error.UNKNOWN_ERROR: alert("定位失败,定位系统失效"); break; } }
Mari kita lihat fungsi showPosition() sekali lagi, memanggil latitud dan longitud koordinat untuk mendapatkan latitud dan longitud pengguna.
function showPosition(position){ var lat = position.coords.latitude; //纬度 var lag = position.coords.longitude; //经度 alert('纬度:'+lat+',经度:'+lag); }
Gunakan antara muka Peta Baidu dan Peta Google untuk mendapatkan alamat pengguna
Di atas kami mengetahui bahawa Geolokasi HTML5 boleh mendapatkan longitud dan latitud pengguna, jadi apa yang perlu kami lakukan ialah menukar longitud dan latitud abstrak kepada maklumat lokasi geografi pengguna sebenar yang boleh dibaca dan bermakna. Nasib baik, Peta Baidu dan Peta Google menyediakan antara muka dalam hal ini Kami hanya perlu menghantar maklumat longitud dan latitud yang diperolehi oleh HTML5 ke antara muka peta, dan lokasi geografi pengguna akan dikembalikan, termasuk maklumat wilayah dan bandar, dan juga jalan, Nombor rumah dan maklumat lokasi geografi terperinci lain.
Kami mula-mula menentukan div untuk memaparkan lokasi geografi pada halaman, masing-masing mentakrifkan id#baidu_geo dan id#google_geo. Kita hanya perlu mengubah suai fungsi utama showPosition(). Mari lihat dahulu interaksi antara muka peta Baidu Kami menghantar maklumat latitud dan longitud ke antara muka peta Baidu melalui Ajax, dan antara muka akan mengembalikan maklumat wilayah, bandar dan jalan yang sepadan. Antara muka peta Baidu mengembalikan rentetan data JSON Kami boleh memaparkan maklumat yang diperlukan untuk div#baidu_geo mengikut keperluan kami. Ambil perhatian bahawa perpustakaan jQuery digunakan di sini dan fail perpustakaan jQuery perlu dimuatkan terlebih dahulu.
function showPosition(position){ var latlon = position.coords.latitude+','+position.coords.longitude; //baidu var url = "http://api.map.baidu.com/geocoder/v2/?ak=C93b5178d7a8ebdb830b9b557abce78b&callback=renderReverse&location="+latlon+"&output=json&pois=0"; $.ajax({ type: "GET", dataType: "jsonp", url: url, beforeSend: function(){ $("#baidu_geo").html('正在定位...'); }, success: function (json) { if(json.status==0){ $("#baidu_geo").html(json.result.formatted_address); } }, error: function (XMLHttpRequest, textStatus, errorThrown) { $("#baidu_geo").html(latlon+"地址位置获取失败"); } }); });
Mari lihat interaksi antara muka Peta Google. Begitu juga, kami menghantar maklumat latitud dan longitud ke antara muka Peta Google melalui Ajax, dan antara muka akan mengembalikan butiran wilayah, bandar dan jalan yang sepadan. Antara muka peta Google juga mengembalikan rentetan data JSON ini lebih terperinci daripada yang dikembalikan oleh antara muka peta Baidu Kami boleh memaparkan maklumat yang diperlukan untuk div#google_geo mengikut keperluan kami.
function showPosition(position){ var latlon = position.coords.latitude+','+position.coords.longitude; //google var url = 'http://maps.google.cn/maps/api/geocode/json?latlng='+latlon+'&language=CN'; $.ajax({ type: "GET", url: url, beforeSend: function(){ $("#google_geo").html('正在定位...'); }, success: function (json) { if(json.status=='OK'){ var results = json.results; $.each(results,function(index,array){ if(index==0){ $("#google_geo").html(array['formatted_address']); } }); } }, error: function (XMLHttpRequest, textStatus, errorThrown) { $("#google_geo").html(latlon+"地址位置获取失败"); } }); }
Kod di atas mengintegrasikan antara muka peta Baidu dan antara muka peta Google ke dalam fungsi showPosition() masing-masing, yang boleh kita panggil mengikut situasi sebenar. Sudah tentu, ini hanyalah aplikasi mudah Kami boleh membangunkan banyak aplikasi yang kompleks berdasarkan contoh mudah ini. Adalah disyorkan untuk menggunakan pelayar mudah alih untuk mengakses demonstrasi DEMO.

Perbezaan utama antara Python dan JavaScript ialah sistem jenis dan senario aplikasi. 1. Python menggunakan jenis dinamik, sesuai untuk pengkomputeran saintifik dan analisis data. 2. JavaScript mengamalkan jenis yang lemah dan digunakan secara meluas dalam pembangunan depan dan stack penuh. Kedua -duanya mempunyai kelebihan mereka sendiri dalam pengaturcaraan dan pengoptimuman prestasi yang tidak segerak, dan harus diputuskan mengikut keperluan projek ketika memilih.

Sama ada untuk memilih Python atau JavaScript bergantung kepada jenis projek: 1) Pilih Python untuk Sains Data dan Tugas Automasi; 2) Pilih JavaScript untuk pembangunan front-end dan penuh. Python disukai untuk perpustakaannya yang kuat dalam pemprosesan data dan automasi, sementara JavaScript sangat diperlukan untuk kelebihannya dalam interaksi web dan pembangunan stack penuh.

Python dan JavaScript masing -masing mempunyai kelebihan mereka sendiri, dan pilihan bergantung kepada keperluan projek dan keutamaan peribadi. 1. Python mudah dipelajari, dengan sintaks ringkas, sesuai untuk sains data dan pembangunan back-end, tetapi mempunyai kelajuan pelaksanaan yang perlahan. 2. JavaScript berada di mana-mana dalam pembangunan front-end dan mempunyai keupayaan pengaturcaraan tak segerak yang kuat. Node.js menjadikannya sesuai untuk pembangunan penuh, tetapi sintaks mungkin rumit dan rawan kesilapan.

Javascriptisnotbuiltoncorc; it'saninterpretedlanguagethatrunsonenginesoftenwritteninc .1) javascriptwasdesignedasalightweight, interpratedlanguageforwebbrowsers.2)

JavaScript boleh digunakan untuk pembangunan front-end dan back-end. Bahagian depan meningkatkan pengalaman pengguna melalui operasi DOM, dan back-end mengendalikan tugas pelayan melalui Node.js. 1. Contoh front-end: Tukar kandungan teks laman web. 2. Contoh backend: Buat pelayan Node.js.

Memilih Python atau JavaScript harus berdasarkan perkembangan kerjaya, keluk pembelajaran dan ekosistem: 1) Pembangunan Kerjaya: Python sesuai untuk sains data dan pembangunan back-end, sementara JavaScript sesuai untuk pembangunan depan dan penuh. 2) Kurva Pembelajaran: Sintaks Python adalah ringkas dan sesuai untuk pemula; Sintaks JavaScript adalah fleksibel. 3) Ekosistem: Python mempunyai perpustakaan pengkomputeran saintifik yang kaya, dan JavaScript mempunyai rangka kerja front-end yang kuat.

Kuasa rangka kerja JavaScript terletak pada pembangunan yang memudahkan, meningkatkan pengalaman pengguna dan prestasi aplikasi. Apabila memilih rangka kerja, pertimbangkan: 1.

Pengenalan Saya tahu anda mungkin merasa pelik, apa sebenarnya yang perlu dilakukan oleh JavaScript, C dan penyemak imbas? Mereka seolah -olah tidak berkaitan, tetapi sebenarnya, mereka memainkan peranan yang sangat penting dalam pembangunan web moden. Hari ini kita akan membincangkan hubungan rapat antara ketiga -tiga ini. Melalui artikel ini, anda akan mempelajari bagaimana JavaScript berjalan dalam penyemak imbas, peranan C dalam enjin pelayar, dan bagaimana mereka bekerjasama untuk memacu rendering dan interaksi laman web. Kita semua tahu hubungan antara JavaScript dan penyemak imbas. JavaScript adalah bahasa utama pembangunan front-end. Ia berjalan secara langsung di penyemak imbas, menjadikan laman web jelas dan menarik. Adakah anda pernah tertanya -tanya mengapa Javascr


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

SublimeText3 Linux versi baharu
SublimeText3 Linux versi terkini

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).
