Avatar billede eksperten1 Nybegynder
04. marts 2004 - 12:43 Der er 3 kommentarer

Udføre JS handling ved tastetryk

Er det muligt via JS at udføre en handling hvis en bestemt tast-kombination trykkes.
Jeg har opbygget en side sådan at en <select> bestemmer en URL i en iframe på samme side. Jeg ville gerne have det sådan at hvis brugeren trykker CTRL + PIL NED så skifter den select til næste valgmulighed, tilsvarende CTRL + PIL OP skifter til den forrige.

Kan dette lade sig gøre og hvordan sikres det at man fanger dette tastetryk ligegyldigt om brugeren er aktiv i iframen eller i hovedvinduet ?
Avatar billede nute Nybegynder
04. marts 2004 - 16:07 #1
IE version:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
    <title>Untitled</title>
    <script language="JavaScript" type="text/javascript">
    <!--
    document.onkeydown = checkKey;
   
    function checkKey()
    {
        if( window.event.ctrlKey && window.event.keyCode == 40 )
        {
            changeSelect( 1 );
        }
        if( window.event.ctrlKey && window.event.keyCode == 38 )
        {
            changeSelect( -1 );
        }
    }
    function changeSelect( intDirection )
    {
        var objSelect = top.document.getElementById( "sel" );
        if( objSelect )
        {
            objSelect.selectedIndex += intDirection;
        }
    }
    //-->
    </script>
</head>
<body>
<form id="frm">
<select id="sel">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
</select>
</form>
</body>
</html>

du skal inkludere <script> i din frame også.

hvis det skal fungere i andre browsere, så skal der laves lidt mere

/nute
Avatar billede eksperten1 Nybegynder
04. marts 2004 - 16:42 #2
Burde det fungere både på Mac og Win i IE 5+ ?
Avatar billede nute Nybegynder
04. marts 2004 - 16:48 #3
Win/IE5+ vil det fungere ... jeg har desværre ingen mac i nærheden til at kunne teste det ... men i følge denne tabel:

http://www.quirksmode.org/dom/w3c_events.html#keyprops

så burde de givne event properties fungere på Explorer 5.2 Mac

/nute
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester