From b1112787e60be712d508e80baaf0d6f9a861f0ac Mon Sep 17 00:00:00 2001 From: Ben Coburn Date: Fri, 28 Apr 2006 03:51:58 +0200 Subject: accesskey tooltip rewriting Does client-side rewriting of accesskey tooltip text so that it will be more OS and browser specific. Dokuwiki should output all accesskey tooltips as [ALT+] because this patch matches on "[ALT+". darcs-hash:20060428015158-05dcb-0102a1b2068c053e81dd21ad3927c78b6c9f349e.gz --- lib/scripts/script.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'lib/scripts/script.js') diff --git a/lib/scripts/script.js b/lib/scripts/script.js index 87fd8e503..d6be1cba9 100644 --- a/lib/scripts/script.js +++ b/lib/scripts/script.js @@ -16,6 +16,33 @@ if (clientPC.indexOf('opera')!=-1) { var is_opera_seven = (window.opera && document.childNodes); } +/** + * Rewrite the accesskey tooltips to be more browser and OS specific. + * + * Accesskey tooltips are still only a best-guess of what will work + * on well known systems. + * + * @author Ben Coburn + */ +function updateAccessKeyTooltip() { + // determin tooltip text (order matters) + var tip = 'ALT+'; //default + if (domLib_isMac) { tip = 'CTRL+'; } + if (domLib_isOpera) { tip = 'SHIFT+ESC '; } + // add other cases here... + + // do tooltip update + if (tip=='ALT+') { return; } + var exp = /\[ALT\+/i; + var rep = '['+tip; + var elements = domLib_getElementsByTagNames(['a', 'input', 'button']); + for (var i=0; i0) { + elements[i].title = elements[i].title.replace(exp, rep); + } + } +} + /** * Handy shortcut to document.getElementById * -- cgit v1.2.3