Как правильно использовать jQuery для запуска события при щелчке или фокусе? - PullRequest
0 голосов
/ 10 октября 2019

По соображениям доступности мне нужно переключать класс, когда кто-то фокусирует элемент с помощью клавиатуры ИЛИ использует мышь, чтобы щелкнуть по нему. В настоящее время требуется 2 щелчка, чтобы переключить класс в первый раз. Кажется, что когда я нажимаю, фокус сводит на нет щелчок, и, таким образом, toggleClass срабатывает дважды. Как правильно это сделать? Любая информация ценится!

<script type='text/javascript'>
( function($) {
jQuery(document).ready(function($) {    
    // Main nav show/hide
    $("#mobile-nav-link").on("focus click", function(e) {
        $( '.mobile-nav, #main-container' ).toggleClass('position-2');
    });
}); 
} ) ( jQuery );
</script>

1 Ответ

1 голос
/ 18 октября 2019

Не думаю, что пользователи ожидают, что меню гамбургеров откроется в фокусе. Более распространенным поведением было бы позволить меню гамбургера открываться / закрываться при вводе, пока оно находится в фокусе.

...