0

在我的页面中,我使用的是 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 添加了两个函数。

之后按下keydown时,主页正在滚动并且工作正常。

但是当我按下向上键时,它只会滚动 bing 地图。任何人都可以帮助我解决这个问题。

4

1 回答 1

4

我找到了答案,只需将“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;
        }
    });
}
于 2013-03-05T09:49:34.533 回答