19

window.navigatorに問題があり、次のコードをローカルhtmlファイルとして実行すると、エラーコード1「ユーザーがジオロケーションを拒否しました」が表示されます。

navigator.geolocation.getCurrentPosition(function(position) {
        console.log(position);
    }, function(positionError) {
        console.log(positionError);
    });

出力はエラー関数からのものであり、positionErrorには次のものが含まれます。

code: 1
message: "User denied Geolocation"

含まれているhtmlがサーバーから提供されている場合、これは発生しません。

これは期待されていますか?ローカルHTMLからナビゲーターを使用する方法はありますか?私はモバイルアプリを作成しようとしていますが、可能な限りネットワークを回避しようとしています。

ありがとう。

4

3 に答える 3

23

Chromeを使用している場合は、以下の回答をご覧ください。

ChromeでのHTML5ジオロケーションプロンプト

これはfileプロトコルのセキュリティ制限のようです。サーバーからローカルでホストする必要があるようです。

于 2012-07-30T17:12:56.710 に答える
7

私のために働いた単純な応答は、単に私のURLをから変更することでした

localhost

127.0.0.1

Chromeから、現在地の設定を共有したいことを確認するように求められましたが、不在でした。

于 2016-08-18T15:36:16.540 に答える
6

小さな「i」記号のURLの左側をクリックするだけです:-(下の画像を参照)

情報記号イラスト

次に、場所が「ブロック」であるかどうかを確認します。'allow'に変更してから、ページをリロードします。

お役に立てれば。

于 2019-06-28T05:58:07.360 に答える