frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

A Small Change to Improve Browsers for Keyboard Navigation

https://b.43z.one/2025-07-22/
116•h43z•6h ago

Comments

massimoto•5h ago
Control + Enter worked on the first three test elements for me on Chrome + Mac. I got alerts and redirects.
jiehong•5h ago
Good idea!

I think browsers should also come with headingMaps [0] and landmarks by default for all websites. With a keyboard shortcut to access them, navigation would be great (assuming websites have a semantic DOM).

[0]: https://addons.mozilla.org/en-GB/firefox/addon/headingsmap

dannyfritz07•5h ago
I'm using Firefox and the links were activated when I hit enter in the quick-find prompt. Not sure why the behavior is different than what the author is seeing.
h43z•5h ago
The links yes, but what about buttons or other html elements?
hirako2000•5h ago
Buttons work too.

The issue is with any JavaScript driven on click events tags. Some sites even have their <a> tags not responding to keyboards events, because they have a hash href, and a JavaScript handler to redirect.

The web is beautiful place.

h43z•4h ago
I don't see it working on firefox for buttons but on chrome. Both don't work on other html elements (div,span,..).
CodeMage•5h ago
When you press Enter in the search box, Firefox finds the next occurrence of your search pattern. An easy fix that doesn't require an extension is to press Esc first, which closes the search box, and then you can press Enter.
h43z•5h ago
This works on links and buttons in chrome. In firefox just on links. In both it doesn't work for other html elements.
chrismorgan•4h ago
I was going to disagree with you, but… huh. It doesn’t work on buttons. Thought it did. Selection is set, but focus isn’t. Further workaround: Shift+Tab.

This feels like it may be a bug, but at the very least it’s not a recent regression—I tested Firefox 44 and it shows the same behaviour. (44.0 is the oldest version I can run now, apparently. I tried 4.0 first, the first version with linux-x86_64 builds, which I have run successfully in the past, I think even in the last year, but now all versions before 44.0 are crashing on startup.)

vunderba•5h ago
On a related note, highly recommend the Firefox Vimium extension if you're a "keyboard warrior".

https://addons.mozilla.org/en-US/firefox/addon/vimium-ff

h43z•5h ago
I used to use vimium (and tried similar extensions) but it always scared me how big the codebase was for most of the popular extensions. In the end I came up with a tiny extension for just the things I need https://github.com/h43z/jkscroll
remark5396•5h ago
It may be well-known, but I’m quite happy with Vimium C for keyboard-based browsing. It provides a sufficiently good set of Vim keybindings* and highlights all clickable elements when you press 'f', not just <a href> ones.

Firefox: https://addons.mozilla.org/ko/firefox/addon/vimium-c/

Chrome: https://chromewebstore.google.com/detail/vimium-c-all-by-key...

* not exactly the same with Vim

jwr•5h ago
Incidentally, I've been trying to use the keyboard to scroll webpages recently, and it's a disaster. Nobody does it, apparently.

PageUp/PageDown do not work correctly on sites that have a permanent topbar (some of the content is never shown). Cursor up/down often does something unexpected (for example in Mastodon, if you use PageDown several times and then cursor down, you will get yanked back).

I think it is a sad regression. Not everybody is able to use the mouse and its scrollwheel!

cluckindan•4h ago
In the EU and the US, this kind of broken accessibility is not legal and the service providers can be sued.

Only applies to public and commercial services, though.

chrismorgan•4h ago
I use Space/Shift+Space and PageUp/PageDown and End¹ for vertical scrolling all the time. It’s nowhere near a disaster. I also disable JS by default, which… well, actually that might help sometimes. And hinder other times.

Rarely, I find a page that doesn’t use the document scroll area, but makes its own which is not focused, and so you have to focus that (by Tab as many times as necessary, or by clicking) before you can scroll by keyboard. But that’s rare.

Long ago, Firefox started compensating for sticky headers, reducing the amount it would scroll the page by, and it mostly works well, though it’s not flawless. I don’t think I’ve observed the same feature in other browsers. One amusing situation that can arise is when the header disappears when you go down and reappears when you go up, so that repeating PageUp and PageDown yields net movement in one direction.

—⁂—

¹ End, but not Home, which is Fn+Left on my laptop, but the Left key hasn’t worked for over a year now. I’ve contemplated replacing the battery and keyboard, but the laptop’s falling apart in enough other ways it doesn’t quite feel worth the investment…

treetalker•3h ago
Just dropping a note to say I appreciate your asterism! :-)
chrismorgan•3h ago
A few years ago I thought long and hard, tried quite a few different things, and ended up settling on that sequence. And with this in my ~/.XCompose:

  <Multi_key> <h> <r> : "—⁂—"
… I can get it by typing `Compose h r`. (“hr” as in <hr>, HTML’s Horizontal Rule.)

At one point since then I came across another person on HN that had independently settled on the same three characters (em dash, asterism, em dash).

In my personal dialect of the lightweight markup language I’ve been making, —⁂— is even the syntax for a horizontal rule. :-)

encom•7m ago
▲

▲ ▲

mathiaspoint•5m ago
Sometimes page up/down seek the video on YouTube. That's terrible.
blacklight•4h ago
Or just use the Surfingkeys extension - it has a bit of a steep learning curve to customize it, but it's worth every piece of effort.
ashwinsundar•4h ago
I installed Vimium a few months ago and haven't looked back -> https://vimium.github.io/

Mouseless as well for navigating anywhere on the computer without a mouse -> https://mouseless.click/

ashton314•3h ago
For macOS users, I highly recommend ShortCat: https://shortcat.app/

ShortCat uses the accessibility API to put Vimium-style keyboard links on buttons and text fields in any app.

I find that Vimium works faster in Firefox than using ShortCat to click around websites, so I use both, but ShortCat technically should do everything (clicking-wise) that Vimium does.

CharlesW•3h ago
ShortCat is an incredible recommendation, thank you!
idk-92•2h ago
omg this is amazing. shortcat that is
lelandfe•1h ago
I wish this was paid or open source…
daef•3h ago
i <3 tridactyl [0] - are there upsides to vimium i'm missing?

[0] https://tridactyl.xyz/about/

edit: added url

theappsecguy•3h ago
Tridactyl is only available for Firefox unfortunately
ashwinsundar•3h ago
Probably not, use whatever makes you happy!
umbra07•3h ago
Vimium has better smooth scrolling. I really, really want to use Tridactyl, but I just can't stomach their smooth-scrolling implementation.
pmdr•3h ago
Vimium, (neo)vim and vim key bindings have been life-changing.
magios•1h ago
i use i3wm so there are various keybindings you can use. for mouseless stuff i use xdotool to move the pointer in 16 or 64 pixel increments using the keyboard. if i could toggle the mouse pointer on and off i would.
isaif•1h ago
You can use unclutter to hide the cursor after a period of inactivity. https://wiki.archlinux.org/title/Unclutter
HankStallone•4h ago
I use Qutebrowser, a keyboard-driven browser built on the Chromium engine. The controls are mostly vi-like (search with /), but easy to configure.
OGEnthusiast•3h ago
FWIW, using Chromium on Linux, I was able to use Ctrl+F + Escape + Enter to find and click on all of them except for the "span with an onclick handler".
butz•42m ago
With more websites shrinking their scrollbars or removing them outright, keyboard navigation seems to be the last resort.

Google's Liquid Cooling at Hot Chips 2025

https://chipsandcheese.com/p/googles-liquid-cooling-at-hot-chips
75•giuliomagnifico•1h ago•21 comments

Show HN: Base, an SQLite database editor for macOS

https://menial.co.uk/base/
337•__bb•5h ago•103 comments

Building the mouse Logitech won't make

https://samwilkinson.io/posts/2025-08-24-mx-ergo-mods
249•sammycdubs•4h ago•184 comments

What are OKLCH colors?

https://jakub.kr/components/oklch-colors
655•tontonius•13h ago•148 comments

Launch HN: April (YC S25) – Voice AI to manage your email and calendar

42•nehasuresh1904•3h ago•46 comments

A Small Change to Improve Browsers for Keyboard Navigation

https://b.43z.one/2025-07-22/
116•h43z•6h ago•35 comments

FCC Bars over 1,200 Providers for Non-Compliance with Robocall Protections

https://docs.fcc.gov/public/attachments/DOC-414073A1.txt
235•impish9208•3h ago•135 comments

A visual introduction to big O notation

https://samwho.dev/big-o/
126•samwho•1d ago•61 comments

How to Make Things Slower So They Go Faster

https://www.gojiberries.io/how-to-make-things-slower-so-they-go-faster-a-jitter-design-manual/
75•neehao•1d ago•20 comments

Meta just suspended the Facebook account of Neal Stephenson

https://twitter.com/nealstephenson/status/1959759051732213812
15•SLHamlet•8m ago•3 comments

Playing every game of Wordle simultaneously

https://chriskw.xyz/2025/08/24/Hyper-Wordle/
7•chriskw•1d ago•2 comments

What Is a Color Space?

https://www.makingsoftware.com/chapters/color-spaces-models-and-gamuts
106•vinhnx•7h ago•18 comments

Ban me at the IP level if you don't like me

https://boston.conman.org/2025/08/21.1
471•classichasclass•15h ago•334 comments

The MiniPC Revolution

https://jadarma.github.io/blog/posts/2025/08/the-minipc-revolution/
69•ingve•2h ago•85 comments

IBM's Power11 Processor Architecture at Hot Chips 2025

https://www.servethehome.com/ibms-power11-processor-architecture-at-hot-chips-2025/
40•ksec•1h ago•29 comments

An Illustrated Guide to OAuth

https://www.ducktyped.org/p/an-illustrated-guide-to-oauth
235•egonschiele•7h ago•45 comments

With AI chatbots, Big Tech is moving fast and breaking people

https://arstechnica.com/information-technology/2025/08/with-ai-chatbots-big-tech-is-moving-fast-a...
22•rntn•1h ago•22 comments

Show HN: Stagewise – frontend coding agent for real codebases

https://stagewise.io/
15•glenntws•2h ago•5 comments

Scamlexity: When agentic AI browsers get scammed

https://guard.io/labs/scamlexity-we-put-agentic-ai-browsers-to-the-test-they-clicked-they-paid-th...
162•mindracer•12h ago•147 comments

Temporary suspension of acceptance of mail to the United States

https://www.post.japanpost.jp/int/information/2025/0825_01_en.html
214•Kye•1h ago•198 comments

How to Fix Your Context

https://www.dbreunig.com/2025/06/26/how-to-fix-your-context.html
27•itzlambda•1d ago•12 comments

SmallJS: Smalltalk-80 that compiles to JavaScript

https://small-js.org/Home/Home.html
121•mpweiher•1d ago•28 comments

Omarchy Is Out

https://world.hey.com/dhh/omarchy-is-out-4666dd31
150•kristianp•1d ago•78 comments

Agent-C: a 4KB AI agent

https://github.com/bravenewxyz/agent-c
96•liszper•8h ago•72 comments

Git-Annex

https://git-annex.branchable.com/
196•keepamovin•15h ago•50 comments

Mathematical secrets of ancient tablet unlocked after nearly a century of study (2017)

https://www.theguardian.com/science/2017/aug/24/mathematical-secrets-of-ancient-tablet-unlocked-a...
47•surement•22h ago•33 comments

Busy beaver hunters reach numbers that overwhelm ordinary math

https://www.quantamagazine.org/busy-beaver-hunters-reach-numbers-that-overwhelm-ordinary-math-202...
204•defrost•2d ago•76 comments

We put a coding agent in a while loop

https://github.com/repomirrorhq/repomirror/blob/main/repomirror.md
378•sfarshid•1d ago•268 comments

Standard Thermal: Energy Storage 500x Cheaper Than Batteries

https://austinvernon.site/blog/standardthermal.html
204•pfdietz•7h ago•195 comments

Prediction-Encoded Pixels image format

https://github.com/ENDESGA/PEP
21•msephton•8h ago•6 comments