javascript - Trying to call a function with an existing eventListener -


my knowledge of javascript isnt great, im not sure how load second function same event listener.

    var tutsimg = "houseproxy.jpg";     var kingtuts = new google.maps.latlng(55.86256, -4.265);     var tutsdisplay = new google.maps.marker({     position: kingtuts,     map: map,     icon: tutsimg,     title:"king tut's wah wah hut"     });      var contentstring = '<div id="content">'+     '<div id="sitenotice">'+     '</div>'+     '<h2 id="firstheading" class="firstheading">king tuts wah wah hut</h2>'+     '<div id="bodycontent">'+     '</div>'+     '</div>';      var infowindow = new google.maps.infowindow({          content: contentstring     });       // creating directions     function calcroute () {             var request = {             origin: 'glasgow',              destination: kingtuts,             travelmode: google.maps.directionstravelmode.driving          }          directionsservice.route(request, function(response, status) {             if (status == google.maps.directionsstatus.ok) {              directionsdisplay.setdirections(response);             }         });         }      google.maps.event.addlistener(tutsdisplay, 'click', function() {          infowindow.open(map,tutsdisplay);          calcroute();     }); 

so here create variables display custom marker on location of chosen building. want call function calculates , displays directions users current location location of clicked icon.

any guys?

i can not understand problem. write code show direction user location location of clicked on map. getting user location using geolocation api (html5).

i hope helps :)

(function(global) {     var google = global.google;     var directionsservice = new google.maps.directionsservice();     var directionsdisplay;      // initialize google map     var initialize = function() {         var mapoptions = {             center: new google.maps.latlng(-34.397, 150.644),             zoom: 5,             maptypeid: google.maps.maptypeid.roadmap         };          // initialize map         var map = new google.maps.map(document.getelementbyid("map-canvas"), mapoptions);          directionsdisplay = new google.maps.directionsrenderer();         directionsdisplay.setmap(map);           // add event on map click         // @param {object} event custom map event object         // contain latitude , langitude         google.maps.event.addlistener(map, 'click', function(event) {             // getuserposition async function             // because require user permission             getuserposition(calcroute.bind(global, event.latlng));         });     };      // html 5 geolocation api     // user position     var getuserposition = function(callback) {         global.navigator.geolocation.getcurrentposition(function(position) {             var latitude = position.coords.latitude;             var langitude = position.coords.longitude;             // convert user position google.maps             // latlng object             var origin = new google.maps.latlng(latitude, langitude);              callback(origin);         } /*, onerror */ );     };      // calc direction user location     // position clicked on map     var calcroute = function(distposition, originposition) {          var request = {             origin: originposition,             destination: distposition,             travelmode: google.maps.travelmode.driving // it's work onliy 1 continent         };          directionsservice.route(request, function(result, status) {             if (status === google.maps.directionsstatus.ok) {                 directionsdisplay.setdirections(result);             }         });     };      // events     google.maps.event.adddomlistener(window, 'load', initialize); }(this)); 

link on gist


Comments

Popular posts from this blog

ios - iPhone/iPad different view orientations in different views , and apple approval process -

java Extracting Zip file -

C# WinForm - loading screen -