Uploaded image for project: 'Apache Cordova'
  1. Apache Cordova
  2. CB-9208

InAppBrowser.executeScript interacts strangely with location.hash

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 5.0.0
    • None
    • iOS

    Description

      In my "loadstart" event handler I call executeScript() with a callback. Here is what I see:

      actual page change: script runs, callback runs
      window.location.assign(same page, new hash): nothing runs
      click anchor link e.g. href=#newsection: nothing runs
      set location.hash = newhash: script runs; callback does not

      The last case is the strangest to me. The script runs just fine in this case but the callback with the result never happens.

      I'm not sure under what conditions a URL fragment change should trigger the "loadstart" event; I would say it should be always, and that does not appear to be the case. That is probably a bug.
      Worse, though, is running the script but not triggering its callback. This could leave some task half-done: the in-app-browser window has had a state change, but the code outside the in-app-browser never hears back about it. That is almost certainly a bug.

      Attachments

        Activity

          People

            Unassigned Unassigned
            grantpatterson Grant Patterson
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: