? ????? ??? ??? ??? ??? ?? ??? ????, ?? ???? ? ??? ??? ???? ?? ?? ?????. ??? Klondike Solitaire ??? ???? ?? ?? ?? ???? ????? ???? ???? ? ??? ???? ?? ??? ?? ????. ??? ?? ??? JavaScript, HTML, CSS? ???? ????? ???? ??? ?????? ??? ? ?? ??? ??? ????? ????? ??????. ?? ? ??? ??? ????.
1??: ?? ??
?? ???? ???? ?? ??? ?? ??? ??????. ? ??? ??? ????.
klondike-preloader/ ├── index.html ├── styles.css └── script.js
?? ??? HTML ??, ???, JavaScript ??? ?? ??? ??? ?? ?????.
2??: HTML ?? ??
HTML ???? ??? ?? ????? ???? ??, ?? ?? ??? ???? ??? ???, ??? ?? ???? ??? ??? ??????.
index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Klondike Solitaire Image Preloader</title> <link rel="stylesheet" href="styles.css"> </head> <body> <button id="load-button">Load Solitaire Image</button> <div id="progress-bar"> <div id="progress"></div> </div> <div id="image-container"> <img id="image" alt="Klondike Solitaire Card" /> </div> <script src="script.js"></script> </body> </html>
3??: ??? ??? ? ???? ??? ??
??? ?? ? ????? ??????. ???? ??? ???? ??? ??? ??? ???? ??? ??? ?????.
???.css
#progress-bar { width: 100%; background: lightgray; margin-bottom: 10px; height: 20px; display: none; /* Hidden at first */ } #progress { width: 0%; height: 100%; background: green; } #image-container { display: none; /* Also hidden initially */ } #load-button { margin-bottom: 10px; padding: 10px 20px; font-size: 16px; cursor: pointer; }
4??: ??? ??? ?? JavaScript ??
?? JavaScript? ??????! ?? ? ?? ??? ????.
- ???? ??? ??: ??? ???? ??? ??? ?????.
- ??? ??? ????: ??? ??? ?? ???? ???? ??? ??????.
- ??? ??? ??? ? ?? ??? ?? ??: ??? ?? ??? ???? ?? ?? ?? ??? ???? ???? ?????.
script.js
const progressBar = document.getElementById('progress'); const imageContainer = document.getElementById('image-container'); const imageElement = document.getElementById('image'); const loadButton = document.getElementById('load-button'); // Default fallback size in bytes const DEFAULT_SIZE_BYTES = 500 * 1024; // 500 KB function loadImage(url) { const xhr = new XMLHttpRequest(); xhr.open('GET', url, true); xhr.responseType = 'blob'; let totalSize = DEFAULT_SIZE_BYTES; document.getElementById('progress-bar').style.display = 'block'; xhr.onprogress = (event) => { if (event.lengthComputable) { totalSize = event.total; } const percentComplete = (event.loaded / totalSize) * 100; progressBar.style.width = percentComplete + '%'; }; xhr.onload = () => { if (xhr.status === 200) { const blob = xhr.response; const objectUrl = URL.createObjectURL(blob); imageElement.src = objectUrl; imageContainer.style.display = 'block'; progressBar.parentNode.style.display = 'none'; } }; xhr.onerror = () => { console.error('Image loading failed.'); }; xhr.send(); } loadButton.addEventListener('click', () => { loadImage('https://example.com/your-image.jpg'); });
?? ???:
- XMLHttpRequest? ???? ??? ????: onprogress? ?? ??? ???? ???? blob?? ??????.
- ?? ?? ??: ??? ?? ??? ???? ?? ???? ??? ???? ????? ??????.
- ?? ? ??: ??? ???? ??? ??? ???? ?????.
5??: ???
?? ? ??? ??? ??? ????? ???? ?? ??? ????? ???? ?? ?? ??? ??????. codepen?? ??? ??? ? ? ????: https://codepen.io/qualotius/pen/KKOXxqP
??
??? ??? ????! ??? JavaScript? ???? ???? ?? ???? ??? ??? ???? ??????? ???? ?????. ??? ???? ??? Klondike Solitaire? ?? ??? ?????. ??? ??? ??? ???? ??? ?????!
? ??? Klondike Solitaire ?? ??: ??? JavaScript? ??? ??? ???? ??? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

Node.js?? HTTP ??? ???? ? ?? ???? ??? ????. 1. ?? ????? ????? ??? ??? ? ?? ????? ?? ?? ? https.get () ??? ?? ??? ??? ? ?? ????? ?? ??? ?????. 2.axios? ??? ???? ? ?? ??????. ??? ??? ??? ??? ??? ??? ???/???, ?? JSON ??, ???? ?? ?????. ??? ?? ??? ????? ?? ????. 3. ?? ??? ??? ??? ??? ???? ???? ??? ??? ???? ?????.

JavaScript ??? ??? ?? ?? ? ?? ???? ????. ?? ???? ???, ??, ??, ?, ???? ?? ? ??? ?????. ?? ????? ?? ?? ? ? ??? ????? ?? ??? ??? ????. ??, ?? ? ??? ?? ?? ??? ??? ??? ???? ??? ??? ???? ??? ?? ??? ????. ?? ? ????? ??? ???? ? ??? ? ??? TypeofNull? ??? ?????? ??? ? ????. ? ? ?? ??? ???? ?????? ????? ???? ??? ???? ? ??? ? ? ????.

?????, JavaScript ???! ?? ? JavaScript ??? ?? ?? ?????! ?? ?? ??? ??? ??? ? ????. Deno?? Oracle? ?? ??, ??? JavaScript ?? ??? ????, Google Chrome ???? ? ??? ??? ???? ?????. ?????! Deno Oracle? "JavaScript"??? ????? Oracle? ?? ??? ??? ??????. Node.js? Deno? ??? ? Ryan Dahl? ??? ?????? ???? ????? JavaScript? ??? ???? Oracle? ????? ???? ?????.

??? JavaScript?? ??? ??? ?????? ?? ???????. ?? ??, ?? ?? ? ??? ??? ?? ????? ????? ?????. 1. ?? ??? ??? ????? ???? ??. ()? ?? ??? ??? ?????. ?. ()? ?? ??? ?? ??? ??? ?? ? ? ????. 2. ?? ??? .catch ()? ???? ?? ??? ??? ?? ??? ??????, ??? ???? ???? ????? ??? ? ????. 3. Promise.all ()? ?? ????? (?? ?? ?? ? ??????? ??), Promise.Race () (? ?? ??? ?? ?) ? Promise.AllSettled () (?? ??? ???? ??)

Cacheapi? ?????? ?? ???? ??? ???? ???, ?? ??? ??? ?? ???? ? ??? ?? ? ???? ??? ??????. 1. ???? ????, ??? ??, ?? ?? ?? ???? ???? ??? ? ????. 2. ??? ?? ?? ??? ?? ? ? ????. 3. ?? ?? ?? ?? ?? ??? ??? ?? ?????. 4. ??? ???? ?? ?? ???? ?? ?? ?? ?? ?? ???? ?? ?? ??? ??? ? ????. 5. ?? ???? ??, ??? ??? ? ??? ??, ?? ??? ? ?? ???? ???? ???? ? ?? ?????. 6.?? ??? ?? ?? ?? ??, ???? ?? ? HTTP ?? ????? ?????? ???????.

JavaScript? ??? ??? ?? ??, ? ? ? ?? ???? ???? ??? ??? ?????. 1. ?? ??? ?? ??? ???? ??? ??? ??? ??? ?? WebAPI? ?????. 2. WebAPI? ??????? ??? ?? ? ? ??? ?? ??? (??? ?? ?? ???? ??)? ????. 3. ??? ??? ?? ??? ?? ??? ?????. ?? ??? ??? ????? ??? ??? ?? ? ???? ?????. 4. ???? ?? (? : Promise. 5. ??? ??? ???? ?? ???? ???? ?? ?? ?? ??? ????? ? ??????.

??? ??? ?? ???? ?? ??? ???? ?? ??? ??? ?? ??? ?? ??? ?????. 1. ??? ?? : ?? ??? ?? ? ? ???? ?? ??? ???? ??? ???? ??????. ?? ??, ??? ?? ? ? ?? ??? ?? ? ?? ??? ??????. 2. ??? ?? : ??? ???? ?? ?? ??? ?? ???? ????? ? ?? ?????? ???? ????? ? ?? ?? ??? true? ??????. 3. ?? ???? ?? ?? ??? ?? ??, ?? ??? ? ?? ???? ?????. 4. DOM ??? ???? ??, ?? ? ??? ? ??? ??? ?? ???? ?? ???? ?????.

JavaScript ???? ? ? ?? ??? ???? ??? ???? ?? ??? ????. 1. ??? ???? ??? ??, ??, ??? ?? ? ??? ??? ?? ? ? ????. 2. ?? ? findIndex? ?? ?? ?? ???? ?? ? ?????. 3. ??? ??? ????? ?? ?? ??? ???? ? ?????. 4. ??? ?? ? ? ??? ?? ??? ?????. 5. ???? ??? ?? ??? ??? ? ?? ?????????. ??? ??? ????? ???? ????? ????.
