diff options
| -rw-r--r-- | src/Browser.js | 12 | 
1 files changed, 8 insertions, 4 deletions
| diff --git a/src/Browser.js b/src/Browser.js index 3e120e5b..55b65471 100644 --- a/src/Browser.js +++ b/src/Browser.js @@ -39,7 +39,8 @@ function Browser(window, document, body, XHR, $log) {    var self = this,        rawDocument = document[0],        location = window.location, -      setTimeout = window.setTimeout; +      setTimeout = window.setTimeout, +      lastLocationUrl;    self.isMock = false; @@ -201,10 +202,13 @@ function Browser(window, document, body, XHR, $log) {     * Sets browser's url     */    self.setUrl = function(url) { -    var existingURL = location.href; + +    var existingURL = lastLocationUrl;      if (!existingURL.match(/#/)) existingURL += '#';      if (!url.match(/#/)) url += '#'; -    location.href = url; +    if (existingURL != url) { +      location.href = url; +    }     };    /** @@ -219,7 +223,7 @@ function Browser(window, document, body, XHR, $log) {     * @returns {string} Browser's url     */    self.getUrl = function() { -    return location.href; +    return lastLocationUrl = location.href;    }; | 
