在模糊的iFrame中使用jQuery热键

时间:2013-01-03 17:27:35

标签: javascript jquery iframe focus hotkeys

我在iframe(iFrame A)中使用jQuery热键,在具有两个iFrame(A和B)的页面上。当焦点在A上时,热键效果很好。但我经常在使用应用程序时在iFrame B中点击。

如果iFrame A没有清晰对焦,如何使热键正常工作?

1 个答案:

答案 0 :(得分:2)

我使用iframe广泛使用热键。我让热键调用一个名为'keyPressed'的函数,它根据键组合确定要做什么。如果我在一个通常在iframe中加载的页面上,我会在加载时让iframe的父级在iframe中绑定额外的热键。如果iframe页面的keyPressed函数没有特定用途,它将尝试将热键传递给父级。但是,这仅在您控制iframe(它们是您网站的一部分)时才有效。

//handles all key pressed events
function keyPressed(keyname) {
    if (keyname == 'alt+s') {
        SaveStdPage();        
    }
    else if (keyname == 'alt+d') {
        ClickButton('TrashBtn');
    }
    else {
        //Pass hotkey to parent 
        try{
            parent.keyPressed(keyname);
        }
        catch (ex) {
            console.log(keyname);
        }
    }
}