Toetsenbordknoppen zoals "Enter", "Spatie" en "Backspace" worden onderdrukt

In een fancybox-container heb ik het formulier geladen met een tekstveld en een aantal invoervelden erin. De invoerbesturingselementen en tekstgebieden werken, maar wanneer ik op Enter of Spatie of Backspace op mijn toetsenbord druk, gebeurt er niets.

Ik heb de veronderstelling gemaakt dat FancyBox het indrukken van deze toetsen onderschept en verdere actie daarover voorkomt. Kan ik dit effect blokkeren of omzeilen of de enige manier is om de FancyBox naar versie 1.3.4 te downgraden?

3

2 antwoord

Fancybox v.2.x onderschept deze toetsen voor navigatie en sluiting

keys: {
next: [13, 32, 34, 39, 40],//enter, space, page down, right arrow, down arrow
prev: [8, 33, 37, 38],//backspace, page up, left arrow, up arrow
close: [27]//escape key
}

het negeert echter belangrijke gebeurtenissen binnen de vormelementen

if (keys) {
D.bind('keydown.fb', function (e) {
// Ignore key events within form elements
if ($.inArray(e.target.tagName.toLowerCase(), ['input', 'textarea', 'select', 'button']) > -1) {    return; }
....

(van regel 395 van het fancybox js-bestand). Welke versie van Fancybox gebruikt u?

UPDATE:

Ik heb net een formulier getest met Fancybox v2.0.3 en ik kan backspace, spatie en enter gebruiken zonder probleem.

3
toegevoegd

Ik geloof dat ik dit probleem eerder heb ervaren. Voor mij was het echter met de pijltjestoetsen. Ik denk niet dat ik problemen had met de sleutels die je noemde, maar misschien gebruikte ik een hele oude versie van fancybox.

I was able to find the solution to my problem here: http://groups.google.com/group/fancybox/browse_thread/thread/b3c617631c465424?pli=1

Het vereist aanpassingen aan het fancybox javascript-bestand.

0
toegevoegd