[ 
https://issues.apache.org/jira/browse/CB-5694?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Joe Bowser reassigned CB-5694:
------------------------------

    Assignee: Joe Bowser

It's very likely that Android's history does NOT properly support these 
methods.  That being said, this is relatively minor, since you can access 
window.location.href correctly and manipulate that instead.

> 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.1.0, 3.2.0, 3.3.0
>         Environment: Tested on Android 4.1.2 Sony Xperia T
> Android 4.2.2 Samsung Galaxy S4
>            Reporter: Clark Pan
>            Assignee: Joe Bowser
>
> 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
> {code:javascript}
> 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);
> {code}
> 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