Если вы используете проводное соединение, вот почему. Safari 5, по-видимому, возвращает ошибку при использовании navigator.geolocation
в проводном соединении. Чтобы проверить это, откройте консоль в Safari 5 и попробуйте следующее:
navigator.geolocation.getCurrentPosition(
function(){console.log("Success!")}, function(){console.log("error")}
);
По сути, пакет Geolocation - это просто оболочка для функций геолокации HTML5. В этом случае функциональность не работает, и вы получаете PositionError
.