Autor Zpráva
Hotkey
Profil *
Zdravím,

mám javascriptovou aplikaci ve které používám klávesové zkratky ALT + Něco.
Problém je ten, že se mi v Internet Exploreru nedaří vypnout defaultní akce namapovane na ty zkratky.
Takže například ALT+A sice mojí nastavenou akci v aplikaci provede, ale IE zároveň vyhodí menu, které je na té kláv. zkratce defaultně namapované.
Jak tomu můžu zabránit?
Díky
Chamurappi
Profil
Reaguji na Hotkeye:
Zakončit odchycení klávesové zkratky return false (stornování výchozí akce). Pokud to nejde, zkusil bych to přes accesskey. Pokud ani to nejde, tak máš nejspíš smůlu.
Mám vyzkoušené, že zkratky s Ctrl většinou stornovat jdou.
Hotkey
Profil *
return false funguje pro firefox a spol, ale bohužel ne IE
ani s
ev.cancelBubble = true;
ev.returnValue = false;
ev.keyCode = 0;

sem neměl úspěch
asi budu muset použít zkratky co nejsou na nic namapované
Chamurappi
Profil
Reaguji na Hotkeye:
Máš pravdu, že return false nepomáhá. Ale teď jsem zkusil accesskey a to mi zkratku s Altem bezpečně zachytí (alespoň v Exploreru 9).
Hotkey
Profil *
Jak vypadá příklad použití accesskey?
ev.accesskey = 0; bohužel nefunguje
Chamurappi
Profil
Reaguji na Hotkeye:
Kdyby sis to slovo hodil do vyhledávače, zjistil bys, že to je HTML atribut určený pro klávesové zkratky.
Hotkey
Profil *
Problém zde je, že já nemám žádné html prvky na které můžu ten accesskey pověsit, mě ty hotkeye odchytává a provádí javascript, tedy všechny akce mám nadefinované v jedné funkci.. je možné nějak to kliknutí na accesskey simulovat aby si IE myslel že na to dotyčný kliknul? Nebo mám na stránku dát pro každý hotkey neviditelný odkaz a přivázat k němu accesskey? To bych sice dělal nerad, ale pokud by to nešlo jinak..
_es
Profil
Hotkey:
já nemám žádné html prvky na které můžu ten accesskey pověsit
Naozaj? Element html tam snáď máš.
Chamurappi
Profil
Reaguji na Hotkeye:
Zkratky z Altem se běžně používají na přístup do menu, je to z pohledu uživatelů docela zažitá konvence. Pokud na stránce nemáš žádné viditelné menu, ke kterému bys accesskey přiřadil, tak asi není dobrý nápad používat Alt.
Jak jsem již psal dříve, zkratky s Ctrl jdou chytit docela spolehlivě.

je možné nějak to kliknutí na accesskey simulovat aby si IE myslel že na to dotyčný kliknul?
Na accesskey se nekliká. Element s tímto atributem dostane v Exploreru při stisknutí klávesové zkratky focus (v jiných prohlížečích ne).
Samotná přítomnost elementu s accesskey=a způsobí, že zkratku Alt+A nezachytí uživatelské rozhraní prohlížeče. Vydáš-li se touto cestou, nezapomeň, že různé jazykové verze Explorerů mohou mít různě nazvaná menu => musíš přes accesskey ošetřit úplně všechny zkratky, nejen ty, které chytá česká verze.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: