Кнопка js не работает на мобильных устройствах, но работает в настольных браузерах - PullRequest
0 голосов
/ 29 апреля 2020

Кнопка ниже работает в настольных браузерах, но не в мобильных браузерах. Я пробовал touchend и touchstart внутри $(".theme-switch").on("click", () => {, но даже они, похоже, не работали, когда работали на мобильных устройствах, а также отлично работали в настольных браузерах. Цель кнопки - изменить тему сайта.

html

<body>
    <header>
        <h1 class="header"><a class="theme-switch" href="#">Site</a></h1>
    </header>
</body>

JS

$(document).ready(function () {
    let darkTheme = localStorage.getItem('theme') === 'dark';
    updateTheme();

    window.addEventListener('storage', () => {
        darkTheme = localStorage.getItem('theme') === 'dark';
        updateTheme();
    });

    function updateTheme() {
        if (darkTheme) {
            $("body").addClass("dark-theme");
        } else {
            $("body").removeClass("dark-theme");
        }
    }

    $(".theme-switch").on("click", () => {
        darkTheme = !darkTheme;
        updateTheme();
        localStorage.setItem('theme', darkTheme ? 'dark' : 'light');
    });
});

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...