Tôi có mã sau yêu cầu người dùng cho phép vị trí hiện tại của họ trong trình duyệt, khi họ nhấp/nhấn vào liên kết vị trí.Sự cố với vị trí địa lý trong IE11
Tính năng này hoạt động tốt trong Chrome, Safari và Firefox nhưng tôi không thể làm cho nó hoạt động trong IE11. Một số lần nó cho thấy thông báo trình duyệt cho người dùng để cung cấp cho vị trí của họ nhưng sau đó không có gì xảy ra.
Tôi tự hỏi liệu có ai khác đã gặp sự cố với Google Maps và yêu cầu vị trí trong IE11 hay không và liệu có ai có giải pháp không?
<p id="error"></p>
<form action="/" method="post">
<a class="location-link" id="location-link" href="#"><img src="/static/images/icons/location.png" alt="Get your current location" title="Get your current location" /></a><input type="text" name="location" value="" placeholder="Find a salon" >
<input class="viewbtn3" value="Submit" type="submit"></form>
<script src="/static/js/jquery.1.9.1.js"></script>
<script src="https://maps.google.com/maps/api/js?sensor=true"></script>
<script type="text/javascript">
$(document).ready(function() {
if (typeof navigator.geolocation == "undefined") {
$("#error").text("Your browser doesn't support the Geolocation API");
$(".location-instruction span").hide();
$(".location-link").hide();
return;
}
$("#location-link").click(function(event) {
event.preventDefault();
var addressId = this.id.substring(0, this.id.indexOf("-"));
var thisid = $(this).attr("id");
//console.log(thisid);
navigator.geolocation.getCurrentPosition(function(position) {
var geocoder = new google.maps.Geocoder();
geocoder.geocode({
location: new google.maps.LatLng(position.coords.latitude, position.coords.longitude)
}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
$("#" + thisid).parent().find('input[name="location"]').val(results[0].formatted_address);
$(".choose_wrap").addClass('sucess');
} else {
$("#" + thisid).parent().find("#error").html("Unable to retrieve your address<br />");
$(".choose_wrap").addClass('fail');
}
})
}, function(positionError) {
$("#" + thisid).parent().find("#error").html("Error: " + positionError.message + "<br />")
}, {
enableHighAccuracy: true,
timeout: 10 * 1000
})
});
});
</script>
nó hoạt động giống như trong các trình duyệt khác. Bạn chưa gặp bất kỳ sự cố nào – Dimple
Hmm, bạn có thử dùng IE11 và Windows 10 bằng bất kỳ cơ hội nào không? – doubleplusgood
Có tôi đã thử IE11 nhưng nó chỉ có một thiết lập lề xác suất .. không có gì sai với định vị địa lý – Dimple