Melin's Blog

Latest posts

See all posts
  • Browser Native Lazy Loading for IMG Images with `loading="lazy"`: A Practical Guide
    Native image lazy loading is one of those small HTML features that removes a surprising amount of JavaScript from everyday frontend work. Instead of watching scroll events, calc...
  • Automatically Refresh an `<a>` Link or Reuse Its Already-Opened Browser Tab
    Opening the same page over and over again is a small UX problem that can quickly become annoying. A user clicks a link once, gets a new tab, then clicks the same link again and...
  • Good Thing `document.readyState` Is Still Useful for Something After All
    For a long time, document.readyState felt like one of those browser APIs that looked useful in theory but rarely earned its place in real production code. It is old. It is simpl...
  • Stop Using IndexedDB for Large Files. Use OPFS Instead.
    Based on the article by zhangxinxu, published September 3, 2026. Original source: https://www.zhangxinxu.com/wordpress/?p=12379 For years, IndexedDB has been the default answer...
  • JS Methods for Detecting Whether a Browser Supports a CSS Property
    CSS feature detection is most useful when you are about to rely on a property or value that may not exist everywhere. The right approach is not browser sniffing. Instead, ask th...
© 2026 • Melin
Press Esc or click anywhere to close