tooltips115x115
James Edwards

James Edwards

James Edwards (aka brothercake) is a freelance web developer based in the United Kingdom, specialising in advanced JavaScript programming and accessible website development. With more than ten years' professional experience in the field, he is a published author, a frequent blogger and speaker, and an outspoken advocate of standards-based development.

James Edwards

tooltips115x115
In this post, James looks at tooltips, which all graphical user interfaces employ, and asks a simple question—why aren't they triggered by the keyboard? Read More
 
guiltysecrets115x115
Do you ever wish that the life of a web developer could be simpler? That open standards really could make interoperable development as easy as writing for one browser? You're not alone!Read More
 
domcontent115x115
In a nostalgic mood, James looks back at when the DOMContentLoaded event first gained popularity, and notes how the problem it was intended to solve is starting to re-emerge from another source. Read More
 
 
throwagain115x115
Following on from a post he wrote back in 2008, James takes another look at using the throw statement within an API's validation mechanism, showing how stack trace information can be used to produce... Read More
 
assignment115x115
This week, James discusses a coding technique common in PHP but less so in JavaScript, to the extent where it could easily be mistaken for a typo!Read More
 
ajaxload115x115
In this post, James looks at a well-worn pattern for instantiating Ajax requests, and questions whether Internet Explorer's native implementation is really the one to prefer.Read More
 
footermenu115x115
In this post, James introduces a novel and flexible technique for improving the accessibility of dropdown menu content, when it's viewed without scripting and/or CSS.Read More
 
 
Designers are constantly challenging us with more complex and subtle designs, and developers are always looking for ways to better implement them. In this post, James looks at CSS drop shadows, and... Read More
 
contiguous115x115
CSS currently provides two sibling selectors, each of which fills a specific niche. But between those two there's a third possibility, which currently doesn't exist, but which would be a unique and... Read More
 
password3-capslock115x115
In the final post of this series, looking at ways for improving password-field usability, James steps back from full-blown solutions to a smaller idea that solves a smaller problem!Read More
 
password2-showpassword115x115
In the second post in this short series, looking at ideas for improving the usability of password fields, James demonstrates a much-simpler solution for allowing users to see their password in... Read More
 
password1-masked115x115
In the first of a series of three posts looking at ideas for improving the usability of password fields, James demonstrates a script for converting normal password fields into “masked”... Read More
 
timeradjust115x115
Asynchronous timers in JavaScript are inherently inaccurate, and the more work they have to do, the worse they become. But there is a simple way of making timers that self-adjust to compensate for... Read More
 
countbackwards115x115
In this short post, James demonstrates how CSS Counters' ability to create non-standard numbering can be used to make ordered-lists count backwards!Read More