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)