Стрелки по умолчанию доступны через функцию прокрутки карты Bing

На моей странице я использую карту Bing, и есть проблема, и я не могу решить эту проблему, даже пытался несколько раз.

function getMap() {

    map = new Microsoft.Maps.Map(document.getElementById('myMap'), {
        credentials: 'XXXX',
        showMapTypeSelector: false,
        enableSearchLogo: false
    });

    Microsoft.Maps.Events.addHandler(map, 'keydown', function (e) {
        if (e.keyCode === 40) {
            e.handled = true;
            return false;
        }
    });

    Microsoft.Maps.Events.addHandler(map, 'keyup', function (e) {
        if (e.keyCode === 38) {
            e.handled = true;
            return false;
        }
    });

    addPushpins();
}

На этой странице я заметил, что мои клавиши со стрелками были захвачены картой Bing и больше не прокручивают страницу. Чтобы избежать прокрутки карты Bing, я добавил две функции: keyup и keydown.

После этого при нажатии клавиши вниз главная страница прокручивается и работает нормально.

Но когда я нажимаю клавишу со стрелкой, она прокручивает только карту Bing. Любой может помочь мне решить эту проблему.

1 ответ

Решение

Я нашел ответ, просто замените "keyup" на "keydown".

function getMap() {

    map = new Microsoft.Maps.Map(document.getElementById('myMap'), {
        credentials: 'XXXX',
        showDashboard: false
    });

    Microsoft.Maps.Events.addHandler(map, 'keydown', function (e) {
        if (e.keyCode === 40 || e.keyCode === 38) {
            e.handled = true;
        }
    });
}
Другие вопросы по тегам