jQuery UI autocomplete sélectionnez l'événement à ne pas travailler avec un clic de souris

J'ai une liste de liens, et j'ai cette boîte de recherche #reportname. Lorsque l'utilisateur tape dans la zone de recherche, la saisie semi-automatique affichera le texte des liens dans une liste.

<div class="inline">
<div class="span-10">
<label for="reportname">Report Name</label>
<input type="text" name="reportname" id="reportname" />
</div>
<div class="span-10 last">
<button type="button" id="reportfind">Select</button>
</div>
</div>

L'utilisateur peut alors utiliser les touches de direction du clavier pour sélectionner l'un des textes, et quand il a appuyez sur ENTRÉE, le navigateur, allez à l'adresse du lien. So far So good.

<script type="text/javascript">
    $(document).ready(function () {
        $("#reportname").autocomplete({
            source: $.map($("a.large"), function (a) { return a.text }),
            select: function () { $("#reportfind").click() }
        })
        $("#reportfind").click(function () {
            var reportname = $("#reportname")[0].value
            var thelinks = $('a.large:contains("' + reportname + '")').filter(
                function (i) { return (this.text === reportname) })
            window.location = thelinks[0].href
        })
    });
</script>

Le problème, c'est quand les types d'utilisateur, la saisie semi-automatique montre une liste, et ensuite à l'utilisateur d'utiliser la souris pour cliquer sur l'un des résultat. La navigation au clavier, le contenu de la zone de recherche est modifié, mais si l'utilisateur clique sur une des options, la boîte de recherche n'est pas modifié et l'événement select est immédiatement déclenchée.

Comment puis-je faire le script fonctionne avec le clavier de sélection et de sélection à la souris? Comment puis-je différencier sélectionner les événements qui sont déclenchés par le clavier avec celles déclenchées par la souris?