Comments (4)
What if we add a beforeUnload event? https://developer.mozilla.org/en-US/docs/Web/API/Window/beforeunload_event
from freecodecamp.
Yup, that works, but we need a little more than that.
The beforeunload
event can only handle the case where the user is closing to the tab, but not if the user is navigating away from the page by clicking a link (say, the block or superblock link in the breadcrumb). Link navigation is handled by @reach/router
, but the library explicitly states that it doesn't support navigation blocking. I could find a workaround, and it seems to work as intended.
I have the implementation somewhat ready. Though we talked a bit about this change in the team huddle, and Quincy suggested finding other alternatives to prompts. So I think adding a note to the instruction could help a bit (while I'm figuring out what else we can do).
from freecodecamp.
Even if we're not blocking navigation, which we probably shouldn't, can we save on navigation? That combined with saving on beforeunload
should prevent learners from losing their work most of the time.
from freecodecamp.
Why don't we use the visibilitychange
instead of beforeunload
? https://developer.mozilla.org/en-US/docs/Web/API/Document/visibilitychange_event
I mean it's just as likely to trigger and seems more reliable according to what I read.
Edit: This article also says the unload
event is being depreciated for Google Chrome. https://developer.chrome.com/docs/web-platform/deprecating-unload
from freecodecamp.
Related Issues (20)
- Icon in the Help button should be hidden from screen readers
- Teach unreachable code and scope in separate lessons for pyramid project HOT 7
- remove __pyodide now that all the tests use runPython.
- Remove __locals now that all tests access variables directly
- Step 1 of RPS project allows for incorrect answers
- JS Beta Project: build a pyramid generator steps 82 and 83 do not have proper indenting for the if statement
- Add step to teach else if statements in pyramid project HOT 1
- typo in step 4 of js beta review project for building a gradebook app HOT 7
- Typo in Step 43 of Building a Cipher HOT 4
- js beta rpg step 23 - code check doesn't accept shorthand margin specification HOT 1
- Wrap keywords inside backticks in Step 51 of Building a Cipher HOT 1
- 1111
- Contributing guidelines landing page redirects to incorrect link HOT 3
- js beta build a RPG step 150 and step 151 can be combined HOT 3
- No link to go back to homepage HOT 2
- Update step 18, 28, 38 hints for calorie counter project HOT 5
- [Building a Cipher] Introduction to code comment seems to be out of sequence HOT 2
- GitPod doesn't allow creationg of account from many countries
- GET /api/users/exists?username=...
- Cracking the coding interview section for FreeCodeCamp HOT 2
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 freecodecamp.