Melin's Blog

Latest posts

See all posts
  • Minimal JavaScript Clipboard Copying: From `execCommand()` to the Clipboard API
    Copying text to the clipboard looks like a tiny feature until you need it to work reliably across browsers, old enterprise environments, local demos, and modern HTTPS applicatio...
  • Broaden Your Horizons: Web Development API Properties That Start With `current`
    In web development, we often use familiar properties like target , src , style , or value . But scattered across browser APIs are several less obvious properties that start with...
  • Starting From `visibilitychange` Not Working in Safari
    The visibilitychange event has been around for a long time. I first wrote about it back in 2012 in an article introducing the Page Visibility API. At the time, it felt like a cl...
  • Browsers Now Natively Support JSON Module Imports for Development
    Original article by zhangxinxu. Source: https://www.zhangxinxu.com/wordpress/?p=12241. This adaptation preserves the original author, source, and links. For years, importing JSO...
  • Deep Dive Into JavaScript Randomness: `Math.random()` vs `crypto.getRandomValues()`
    Random numbers show up everywhere in JavaScript: temporary IDs, animations, randomized UI effects, shuffling lists, lottery-style selection, tokens, UUIDs, encryption keys, and...
© 2026 • Melin
Press Esc or click anywhere to close