diff --git a/js/index.js b/js/index.js index d71789c..614b0c6 100644 --- a/js/index.js +++ b/js/index.js @@ -273,7 +273,7 @@ urlHash = new L.Hash(map, mapLayers, function() { var url = router.getUrl(routing.getWaypoints(), null); - return url.substr('brouter?'.length); + return '&' + url.substr('brouter?'.length+1); }, onHashChangeCb, onInvalidHashChangeCb); routingOptions.on('update', urlHash.updateHash, urlHash); nogos.on('update', urlHash.updateHash, urlHash); diff --git a/js/plugin/leaflet-fullHash.js b/js/plugin/leaflet-fullHash.js index 4b651a6..9eca364 100644 --- a/js/plugin/leaflet-fullHash.js +++ b/js/plugin/leaflet-fullHash.js @@ -20,7 +20,7 @@ if(hash.indexOf('#map=') === 0) { hash = hash.substr(5); } - var args = hash.split("?"); + var args = hash.split(/\&(.+)/); var mapsArgs = args[0].split("/"); if (mapsArgs.length == 4) { var zoom = parseInt(mapsArgs[0], 10), @@ -160,7 +160,9 @@ } }); layers.forEach(function(element, index, array) { - that.map.addLayer(options[element]); + if (element in options) { + that.map.addLayer(options[element]); + } }); this.isUpdatingHash = false;