Clark Pan created CB-5694:
-----------------------------

             Summary: location.replace does not behave as expected
                 Key: CB-5694
                 URL: https://issues.apache.org/jira/browse/CB-5694
             Project: Apache Cordova
          Issue Type: Bug
          Components: Android
    Affects Versions: 3.2.0, 3.1.0, 3.3.0
         Environment: Tested on Android 4.1.2 Sony Xperia T
Android 4.2.2 Samsung Galaxy S4
            Reporter: Clark Pan


Using location.replace should replace the current page with the specified page. 
This is not the case when using hash values.

Steps to reproduce:

1. Create new cordova project
2. Add android
3. Run code similar to this after device ready
window.location.hash = '#foo';
expect(window.location.hash).toBe('#foo');
window.location.replace('#bar');
expect(window.location.hash).toBe('#bar');
window.location.hash = '#foobar';
expect(window.location.hash).toBe('#foobar');
window.history.back()
setTimeout(function(){
expect(window.location.hash).toBe('#bar');
}, 0);

Expected results:
All the expectations to be true

Actual results:
the last hash value will be '#foo'

Workaround:
One could shim location and history and provide their own implementation of 
history state.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to