Comments (5)
I'm a little confused, the purpose of the check near line 166 is to force older browsers which don't support XMLHttpRequest2 to use onreadystatechange
: https://github.com/HubSpot/offline/blob/master/js/offline.js#L171
Meaning, it was checking specifically that it was undefined on IE9, and it was correctly avoiding a code path which wouldn't work. Before making your change, what was happening in IE9. Was it just not showing up?
The readyState is correctly 1 before sending the XHR (it's set by the browser, not jQuery). It will then later be reset to 0 if there is a network issue.
from offline.
I was seeing xhr.onprogress == "undefined" (non-null), and so it was entering the onreadystatechange path in IE9.
So instead of this:
if (xhr.onprogress === null) {
I changed to this:
if (xhr.onprogress === null || xhr.onprogress === undefined) {
And (strangely?) it works. I see what you're saying though - in IE9 those events (error/timeout) shouldn't even be available. Hm...I'm definitely running IE9.
When it was in the onreadystatechange block my readyState was always "1", and even after a failure it remained "1", so the disconnected functionality was never kicking in. This might be due to how I was testing though: I was just being lazy and stopping my local server before the request (causing it to fail). I suspect if I tested properly against a remote server and broke the connection I may see a different result..?
Thanks, and apologies for the confusion. :)
from offline.
IE9 does not support XMLHttpRequest2, but I believe it does support onload and onerror events on the XDomainRequest
object, which is used for cross-origin requests. In any case though, the onreadystatechange block should work. readyState
of 1 generally means that open
was called, but send
was not on the XMLHttpRequest object.
from offline.
Right. I'm going to dig a bit deeper and see if I can nail down what's going on here. I appreciate the quick replies!
from offline.
Please reopen if you still have this issue.
from offline.
Related Issues (20)
- Offline.js not working with async HOT 4
- document.body is null
- Shows offline pop-up frequently due to request timeout
- Offline.options HOT 3
- [B] Countdown doesnt make sense, as soon as there is connection it connects HOT 1
- Does multiple ajax catch/send work or no? HOT 1
- Offline.js is not triggering the ajax on success functions after reconnecting HOT 2
- It is not working in firefox browser
- persian
- Uncaught TypeError: __WEBPACK_IMPORTED_MODULE_0_offline_js__.on is not a function
- i added game: true, included snake.js but doesnt work - any ideas?
- Offline.js not working on safari HOT 1
- Offline not showing any popup if I disable WIFI, but it is working if I manually choose offline in chrome. HOT 10
- Offline.js Intercept WebSocket Requests HOT 1
- For those still wanting to use this HOT 4
- Is there a way I can use this repo in React app ? HOT 1
- My internet is offline chrome shows it proper, but offline.js not fires.
- Dissable console logging for requests
- Spanish translation
- [REQUEST] Indonesian translation
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from offline.