2012-05-30 44 views
1

對於AS2我需要允許用戶按「Alt + N」進入下一頁,但問題是,在Windows中,每當按下Alt鍵時,都需要重點關閉閃光燈嵌入和keylistener永遠不會收到它。使用javascript來禁用FF鍵按下AS2嵌入

研究要做什麼,似乎解決方案是使用Javascript來禁用Firefox(需要運行的瀏覽器)中ALT鍵的默認操作。我不確定這是否是正確的道路,並不完全確定如何去做。

回答

1

那麼,你需要在Flash程序中的外部接口;是這樣的:

function keyCodeReceptor(code){ 
    switch (code) { 
    case 67: 
     // go to the next page 
     break; 
    // add any other keys you need to bind to "Alt+key" combination 
    default: 
     break; 
    } 
} 

flash.external.ExternalInterface.addCallback('doKey', null, keyCodeReceptor); 

然後,你需要像在HTML要嵌入對象如下所示:

(function(){ 
    // Use the name or index of your embed here 
    var flash = document.embeds[0]; 
    window.addEventListener('keydown', function(event){ 
    if(event.altKey && event.keyCode == 67){ 
     event.preventDefault(); 
     event.preventCapture(); 
     event.preventBubble(); 
     flash.doKey(event.keyCode); 
    } 
    }); 
})(); 

同時,確保嵌入有allowScriptAccess屬性設置到"always"

我只測試過這是Firefox(最新版,Mac和Windows),所以我根本不知道它是否適用於其他瀏覽器。希望這可以幫助!

+0

這工作完美,謝謝! –