Как сфокусироваться на iframe afterShow с Fancybox3 - PullRequest
0 голосов
/ 30 октября 2019

Я могу сосредоточиться на iframe с помощью команды instance.focus () и, таким образом, нажать клавишу на клавиатуре «вправо» после открытия iframe, чтобы перемещаться по ней (для просмотра этой книги) без необходимости сначала указывать на «> "кнопка или точка где-то внутри iframe.

Однако при этом методе я теряю возможность закрыть окно iframe клавишей" ESC ", чего я хочу избежать.

Просто добавьте команду instance.focus () в комментарий, чтобы восстановить работу клавиши «ESC».

Как получить фокус фрейма по-другому, не мешая клавише «ESC» ?? ?

<a data-fancybox data-type="iframe" href="https://e.issuu.com/embed.html?embedType=script&u=actes_sud&d=l_onard_anatomiste_liseuse&p=">Léonard de Vinci anatomiste</a>

$(document).on("afterShow.fb",function(e,instance,slide){instance.focus()});

Codepen

1 Ответ

0 голосов
/ 30 октября 2019

fancybox прослушивает событие keydown на главной странице, но эти события не всплывают внутри страницы iframed. Если у вас есть контроль над страницей iframed, вы можете добавить туда свой собственный слушатель нажатия клавиш и закрыть fancybox (используя parent.jQuery.fancybox.close();) на ESC.

...