Урок 1. 00:05:08
Project Setup and Install
Урок 2. 00:03:48
Feature Detecting the Drag and Drop API
Урок 3. 00:05:11
Declaring a Draggable Element
Урок 4. 00:03:49
Active States with Drag Enter and Leave Events
Урок 5. 00:04:45
Drag Over and Drop Effects
Урок 6. 00:05:05
Binding Drop Events
Урок 7. 00:07:46
Passing DOM Node Data via Drag Start Events
Урок 8. 00:05:41
Dragging Files into the Drop Zone
Урок 9. 00:01:48
Improving Drag UX on the Document
Урок 10. 00:06:10
Restricting Specific File Types
Урок 11. 00:09:07
Using FileReader to Render Thumbnails
Урок 12. 00:04:23
Appending Files to FormData Objects
Урок 13. 00:07:25
POST a FormData Object to Node.js
Урок 14. 00:06:05
Uploading Files from <input type=”file”>
Урок 15. 00:03:55
Feature Detecting the Notification API
Урок 16. 00:04:57
Using Notification.requestPermission() with Async/Await
Урок 17. 00:06:06
Creating a new Notification() Factory
Урок 18. 00:03:31
Safety Checking the Notification.permission Property
Урок 19. 00:04:28
Focusing Browser Tabs after Notification Click Events
Урок 20. 00:06:36
<video> and <source> elements
Урок 21. 00:04:42
Configuration Attributes
Урок 22. 00:10:10
Binding to Media Events
Урок 23. 00:12:04
Custom Play, Pause and Stop Controls
Урок 24. 00:09:26
Syncing Media Progress to <input type=”range”>
Урок 25. 00:11:42
Syncing and Displaying Real-time Duration
Урок 26. 00:04:57
Scrubbing Duration with <input type=”range”>
Урок 27. 00:13:13
Scrubbing Volume Levels and Mute Functionality
Урок 28. 00:08:08
Picture-in-Picture (PiP) Mode
Урок 29. 00:05:29
<audio> Element and Reusing Media APIs
Урок 30. 00:03:27
Using the new Audio() constructor
Урок 31. 00:03:01
Feature Detecting the Page Visibility API
Урок 32. 00:03:36
Page Visibility Events and States
Урок 33. 00:04:42
Performing Actions on Visibility State Changes
Урок 34. 00:03:55
Feature Detecting the Fullscreen API
Урок 35. 00:05:38
Fullscreen Mode for the Document with Async/Await
Урок 36. 00:02:48
Fullscreen Mode for a Single Element
Урок 37. 00:02:15
Fullscreen Change (Enter and Exit) Events
Урок 38. 00:03:52
Programmatically Exiting Full Screen Mode
Урок 39. 00:04:08
Feature Detecting the History API
Урок 40. 00:07:04
Pushing New History State
Урок 41. 00:02:06
Push State versus Replace State
Урок 42. 00:02:08
Rendering Data on Route Changes
Урок 43. 00:07:47
Push State from Nav Click Events
Урок 44. 00:03:04
Loading Data on Route Refresh
Урок 45. 00:03:35
History Back, Forward and Go API
Урок 46. 00:07:01
Popping State from the History Stack
Урок 47. 00:04:19
Feature Detecting the Canvas API
Урок 48. 00:08:42
Canvas Context and Basic Shapes
Урок 49. 00:07:15
Create and Update State via Mouse Events
Урок 50. 00:07:41
Rendering to Canvas with requestAnimationFrame
Урок 51. 00:02:15
Clearing the Canvas
Урок 52. 00:04:51
Downloading Canvas Images via Data URIs
Урок 53. 00:02:33
Feature Detecting the Async Clipboard API
Урок 54. 00:08:01
Writing Text to Clipboard with Async/Await
Урок 55. 00:04:54
Reading Text from Clipboard and Permissions API
Урок 56. 00:06:16
Intercepting Copy and Paste Events to Customize Data
Урок 57. 00:10:56
Feature Detecting the Web Storage API
Урок 58. 00:04:53
Set and Get Data to localStorage
Урок 59. 00:06:14
Storing JSON Objects in localStorage
Урок 60. 00:03:46
Removing Items and Emptying localStorage
Урок 61. 00:07:32
Triggering localStorage from UI Events
Урок 62. 00:13:02
Creating a Web Storage Module
Урок 63. 00:06:51
Error Handling Exceeded Quotas
Урок 64. 00:05:57
localStorage onChange Events
Урок 65. 00:04:36
Getting all localStorage values
Урок 66. 00:05:26
Feature Detecting the Geolocation API
Урок 67. 00:06:04
Requesting Geolocation Position to get User’s Position
Урок 68. 00:06:28
Handling Permission and Location Errors
Урок 69. 00:03:21
Advanced Geolocation Options
Урок 70. 00:02:43
Watching and Clearing Realtime Geolocation Position
Урок 71. 00:03:22
Rendering Coordinates to Google Maps