-
-
Notifications
You must be signed in to change notification settings - Fork 924
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Route is not resolved on hash change in IE #1734
Comments
That's super odd... What IE versions are affected? Edit: In theory, |
Could you try this? It is your fiddle, but as a top level page (no iframes added by jsfiddle). https://bl.ocks.org/pygy/raw/a067feff54d58d36f17bc6851749afe3/#/home |
Sure. Does not work on IE 11.953.14393.0.
Found this issue for all IE before Edge: http://stackoverflow.com/a/41473506 By the way, mithril 0.2.x worked fine. |
Thanks for the details. I suppose that v0.2 uses |
@pygy It does. |
I gave this a crack this morning with little success (many tests are broken by the change, and the mocks do not handle "debounced async" |
Sorry, I didn't mean to close this, I didn't know that just mentioning an issue in a commit message closed issues (vs "fix #xxxx" ). |
@pygy That convenience feature is usually useful in GitHub, but yeah, sometimes, it does get annoying. |
I'm afraid the fix for this will be breaking: pygy@bd7230f#diff-08af55052ff6ecc22309ea97e4711428R101 This is impossible to implement for IE9 (and it has never been), but if we want the router to work identically in every env in hash mode, we can't cheat with This test would have passed in non-IE browsers... There's also pygy@bd7230f#diff-08af55052ff6ecc22309ea97e4711428R799 that must be elucidated, it may be a Edit: here's the problem child in full: if (prefix[0] !== "#") {
o("default route doesn't break back button", function(done) {
// impossible to do with onhashchange, "new.com" should equal "old.com"
init("")
$window.location.href = "http://old.com"
$window.location.href = "http://new.com"
route(root, "/a", {
"/a" : {
view: function() {
return m("div")
}
}
})
callAsync(function() {
o(root.firstChild.nodeName).equals("DIV")
o(route.get()).equals("/a")
$window.history.back()
o($window.location.pathname).equals("/")
o($window.location.hostname).equals("old.com")
done()
})
})
} Before this, |
@pygy That's concerning... 😟 |
@isiahmeadows Worse, I recently realised that |
I ran into this recently and had to create a workaround. Just in case it helps anyone. |
…nge-based routing explicitly fix MithrilJS#1734
I'm punting this to post-v2, but I might be able to fix it in a future patch release. Specifically, we could detect IE and see what we can do to work around the If someone beats me to it, I'll gladly consider merging it. 🙂 |
This ticket is 3 years old, and IE is no longer a support target. I'm closing this because with the passing of time, this no longer constitutes a bug. |
@barneycarroll This needs checked against IE11 - MS still supports it: https://docs.microsoft.com/en-US/lifecycle/faq/internet-explorer-microsoft-edge I say we should put the lid on it August 17 of this year, aligning with Microsoft 365: https://techcommunity.microsoft.com/t5/microsoft-365-blog/microsoft-365-apps-say-farewell-to-internet-explorer-11-and/ba-p/1591666#ftag=MSF278e2c0 |
Excellent. Given our resources I say we just drop support now. There is no sense leaving open the window of hope and opportunity for a browser that is going to be discontinued in half a year. |
Sure, let's do that. Just not this immediate next release. How does that sound? |
Hello!
I found that in IE
supportsPushState
is true, butonpopstate
will never be called. So links does not work.Example here: https://jsfiddle.net/1bj54j8v/
The text was updated successfully, but these errors were encountered: