Skip navigation.

exploreopera

| Help

Sign up | Help

Advancing...

, , ,

We have been working on the accesskey implementation in Opera. Accesskeys are nice things for people who find it hard to drive the computer - for example people with various kinds of "motor disabilities". Parkinsons's disease, cerebral palsy, various types of paralysis, repetitive strain injuries, etc.

The way people use them in a web page is to declare an accesskey for a link or control. For example
<a href="http://my.opera.com/chaals" accesskey="c">My Blog</a>

is a bit of HTML that makes a link to my blog, and gives it the accesskey "c". Somehow, this is then supposed to help you get to that link extra quickly - instead of having to go through the entire list of links using q/a keys (or tab, and also have to stop at form controls and other stuff, if you use another browser), you can get straight there.

The problem is that Internet Explorer followed a "helpful" suggestion added in the W3C specification, to use "alt" plus the character as a way of getting there, and "cmd" (the squiggly thing also called apple) on macintosh. Netscape followed them, and Mozilla followed Netscape.

Any mac user will tell you that cmd-c is copy, on any mac application in any situation any time. Except (perhaps) on my page. Similarly, if I used the accesskey "f", anyone knows that on windows alt-f opens the file menu - one of the most basic functions of the Windows user interface.

Well, Opera solved that some years ago. Instead of having to guess whether standard shortcuts were being overridden, there is a key to trigger accesskey mode. You press it, and the next key is treated as the accesskey. By default it is shift-esc which is perhaps not the easiest one, but I remap it (preferences -> advanced -> keyboard shortcuts) to "." since I don't use that.

So now I just press ". c" to get to my page. But wait! How do I know?

Well, in all browsers except iCab, until recently, there is no way to find out. The site might mark the keys it uses, or might not.

So now we have a popup that tells you what the options are. Grab a weekly build, find a page which uses accesskeys (they are very common in UK pages such as the BBC) and press shift-escape (or whatever you configured it to).

And give us feedback. We realise that this isn't perfect yet, but I think it is now best-of-breed. (Sadly, that hasn't been a hard point to reach, which doesn't reflect well on any browser). There's more to be done on it, but a start is good.

I trust that my good friend John Foliot will have somethign to say about this by and by (he andd I have been discussing accesskeys for many years already), and maybe others. Many thanks to Petter and others for getting it going.

The wrong stuff...creeping senility

Comments

avatar
I am glad to see this feature finally implemented.

It is very useful and it's much better than nothing.

My suggestions would be to ask the designer from Opera to improve the interface of the list. Make it look nicer.

Also, the list items should be clickable.

Pressing ESC should turn the list off (get out of "access key mode"). Currently I have to press shift+esc again to achieve this.

The "new" design of the list should emphase somehow the accesskeys. Currently, the list is a simple text list:

(A) About
(C) Copyright
(e) etc :smile:

Even if this looks "clear" enough, on big, complex pages with long titles.... things get nasty. Try my site.

Improving the design would also help cope with the problem when the titles also contain the accesskey (again, this applies to my site).

Last, but not least, I'd suggest having a title for the entire list. So, the user actually knows what's the deal. Something like "Access keys in this page".

Nice to have would be ... tooltips to show the accesskey in a clear and visible way.

Food for thought, maybe the list is "too obtrusive". Meaning, it would be better if it wouldn't somehow get in the way, allowing me to see the page, to decide which access key to press.

By robodesign, # 3. June 2006, 11:02:24

avatar
I haven't tried the weekly, but from what I hear about it, I think Konqueror has a better implementation. The key is Ctrl (tapped, not held down). Ctrl is easy to discover, find and press, and isn't used for anything else if you press and release it. When you press it in Konqueror, little popups appear near the corresponding links showing the accesskey. In this "accesskey mode", pressing the accesskey activates the corresponding link/control, and pressing any other button hides the popups and exits accesskey mode.

By exclipy, # 4. June 2006, 01:22:48

avatar
robodesign, funnily enough we have similar thoughts about where to take it... although it takes some time to get it all perfect :smile:

exclipy, interesting. How do you know if there are accesskeys on more than the screen you can see? That was the reason for providing the entire list (even if, as robodesign says, it currently covers up some of the page itself). Also, ctrl being tapped is used by many of the people who have the kind of disabilities that makes keyboard access extremely important, through the access feature known as sticky keys (this is one of the oldest access things to be built in across more or less every platform), so I am not sure that it is the best shortcut either... I think being able to configure it is pretty important.

Anyway, we are aware that there is more to do for this to be perfect, but we hope you like what's there so far :smile:

cheers

Chaals

By chaals, # 4. June 2006, 08:29:56

avatar
Chaals: I'm glad you guys have similar thoughts :smile:. I'm looking forward for what's coming up.

exclipy: I cannot get into "access key" mode in Konqueror 3.5.2. Pressing Ctrl won't show anything.

By robodesign, # 4. June 2006, 09:39:02

avatar
Chaals: No, you can't see the access keys outside of the viewport. I suppose it's supposed to be used when you see a link and want to follow it... it's easier to see the connection between the key and where it goes.

Also, that's a good point about sticky keys. I just tried it and it just means you have to press Ctrl several times (I'm not sure why you have to press it 3 times and not just 2 in KDE...), which I think is still easier than holding down Shift and pressing Esc.

robodesign: I'm not sure why it's not working for you (I'm using Konq 3.5.2 also). I can only suggest to make sure the focus is on the page (perhaps that's another accessibility problem?) and of course, that you're on a page with access keys.

Anyway, the feature is described briefly here:
http://docs.kde.org/stable/en/kdebase/konqueror/accesskeys.html

By exclipy, # 5. June 2006, 00:19:48

avatar
exclipy, there is no doubt that shift-esc is a bad default for anyone who has to use accesskeys. That's why keyboard shortcut configurability is so valuable. A problem is that it isn't just sticky keys that conflict - various kinds of "assistive technology" like that (speech output, special keyboards, etc) use keys that "nobody else uses".

In truth, there just aren't enough keys for everything to have one they can rely on. And for some people, they only have access to a handful of the keys that are there anyway - do you know how to press the 我 key (it's a legitimate value for an accesskey and could be quite resonable)?

(while I am here, just adding a link to a forum discussion about why alt+key is a bad idea)

Robodesign, on your site it is true that there are a lot of accesskeys. But this is still better than having to use the entire list of links... and nobody is forced into it. Like using q/a or the links panel or find-as-you-type it is another way of trying to help people, and not break stuff.

By chaals, # 5. June 2006, 09:49:55

avatar
(A screenshot for the first version of this we released. It's improved since then...)

By chaals, # 5. June 2006, 11:02:05

avatar
And by and by, I do.

The fact that users can now discover quickly the access points declared by the author is a good first step - however, what if the declared accesskey conflicts with something else? For so long as the author is allowed to set the binding (rather than the end user) there will be issues with keybinding conflicts (coupled with the fact that there is little to no standardization). Chaals choses [accesskey="c"] for his blog, yet Opera (the company) chooses to use that same configuration [accesskey="c"] to take you to the "Company" page of the Opera web site. And, sadly, if a user hit either of these pages with IBM's HomePageReader, the keystroke combination of ALT+C (because those users are stuck with that broken model of accesskey implementation) would have a conflict: ALT+C in HPR = "Read Characters".

So while I salute Opera for taking some good steps (heck, I'll even say groundbreaking), it's a little like re-arranging the deckchairs on the Titanic - accesskey (the HTML element) is so badly flawed that allowing the author to declare the bindings will generally *ALWAYS* result in some form of issue for some user some-how.

Thankfully, there are now emerging some nifty scripts that allow the end user to do their own mappings - the author has declared the "hooks" in their source-code, but leave the mapping/binding to the end user. I particualrly like the implementations of Gez Lemon http://juicystudio.com/article/user-defined-accesskeys.php and Rich Pedley http://www.quirm.net/page.php?id=14

By foliot, # 5. June 2006, 13:56:19

avatar
exclipy: I still can't see anything. Maybe there's a bug.

However I'm in favour to shift+esc, instead of alt or ctrl.

chaals: I find myself using quick find very often. I also like q/a, e/d, w/s and r/f.

foliot: That is not my coup of tea, and certainly not the coup of tea for quite many developers. Those emerging nifty scripts are not "copy/paste" material, they wouldn't work in my site, nor other types of sites I have made. Allowing the user to customize the accesskeys is rather easy IMHO. However, it's not something one enjoys to do (takes a bit of coding). Of course, this all depends on how you organized your site code.

By robodesign, # 6. June 2006, 18:26:36

avatar
Hi.
I have been using opera(free full version)
for 7 months and like the one key plus(+)key
and minus key(-)to increase the size of the fonts and
pictures and "fit to window" function, helps me surf
better, a big thanks to the opera team!
I also found the security code box on the sign up
was and is a nightmare to see.
thanks
tkm
p.s. i wish the best for your grandmother.

By talatkm, # 16. June 2006, 01:35:00

avatar
Chaals - I'm going to take the Opera Challenge. I'm intrigued by this implementation and I'm willing to make Opera my primary browser for a week or so to test it out. Think that'll be enough time? I've always liked the fact that Opera separates links and form fields by using "a" and "tab" keystrokes, so I think I'll have a go and add the accesskeys implementation to my testing. (Good tip btw on mapping accesskey mode to the . instead of the cumbersome Shift + Esc)

Cheers,
Derek.

By derekfeatherstone, # 13. July 2006, 13:56:32

avatar
Hi Derek,

it took me more than a week to discover why I liked it (and I was starting from the premise that I needed a new mail client, not looking for a browser at all).

But assuming you're looking for nice things, check out the WAT toolbar for Opera at http://www.paciellogroup.com/resources/wat-about.html or the webdev toolbar at http://operawiki.info/WebDevToolbar

Check out the SVG stuff with something like my highlighted SVG clock, or one of Holger Will's widgets. Use RSS and IRC and zoom and tabs and panels (don't show the panel toolbar, but do show the panels and add some useful stuff there).

And if you find a site that doesn't work, help -> report a site problem...

And so on.

Anyway, enjoy.

By chaals, # 14. July 2006, 03:20:06

avatar
And if you find a site that doesn't work, help -> report a site problem...


I was wondering about that, actually... Where do those submissions go? are they public in a bug database somewhere? or is more quietly controlled QA?

By derekfeatherstone, # 14. July 2006, 04:00:43

avatar
We don't really have a public bug tracking system of any kind at the moment...

By chaals, # 14. July 2006, 04:43:12

avatar
We don't really have a public bug tracking system of any kind at the moment.


Ok, cool... thanks, Chaals... I'll be sure to get back to you on my Opera adventure. I have already encountered a few bugs and sent things off to the "Report site problem" bin.

By derekfeatherstone, # 14. July 2006, 05:17:33

avatar
Thanks for the excellent article and resource. Nice work on top of that it’s really helpful..

By seotools, # 14. October 2006, 16:23:23

Write a comment

You must be logged in to write a comment. if you're not a registered member, please sign up.