Search code examples
javascriptjquery-mobilegeolocationjquery-events

How to call function when user Allows or Denies access to "Physical Location"?


My application is powered by jQuery mobile and uses geolocation.

After my application attempts to get the user's location, the (Chrome) browser prompts the user:

Example.com wants to track your physical location [allow] [deny]

My goal is:

  1. If the user clicks "Allow", function 1 is called (location is used by app).
  2. If the user clicks "Deny", function 2 is called (address form appears).

How can I bind a function to the event that occurs (if any) when the user clicks the "Allow" or "Deny" button?


Solution

  • The getCurrentPosition function accepts two function arguments. Heck, the first is executed when you allow and the other when you deny!

    Documentation

    http://jsfiddle.net/pimvdb/QbRHg/

    navigator.geolocation.getCurrentPosition(function(position) {
        alert('allow');
    }, function() {
        alert('deny');
    });