2010-10-17 4 views
1

J'ai une application qui nécessite la flèche vers le bas, ou la lettre s pour une fonction spécifique (la flèche vers le bas et la lettre "s" déclenchent la fonction dans l'application).Touche fléchée vers le bas pour la page HTML

L'utilisateur ne peut pas utiliser le clavier, je dois donc faire un bouton à l'écran pour que l'utilisateur puisse cliquer. L'application est affiché dans une page HTML et je l'ai fait d'autres boutons avec le code suivant:

<img src="left.jpg" name="Left" onclick="javascript:[CODE_TO_RUN];" vspace="0" width="75" height="75" hspace="0" /> 

Cela fonctionne pour mes autres fonctions, mais je ne peux pas obtenir sendKey de travailler pour simuler la flèche vers le bas ou la touche « s » . Est-ce que quelqu'un sait comment faire un bouton sur une page HTML qui va simuler en appuyant sur la flèche vers le bas ou la touche "s"? S'il vous plaît, aidez, merci!

+0

Où la page HTML est-elle exécutée? – SLaks

+4

Pourquoi ne pouvez-vous pas simplement appeler le même code Javascript que le gestionnaire de keypress appelle? – Pointy

+2

Débarrassez-vous de ce truc "javascript:". C'est inutile dans un attribut "onclick" (et vraiment ailleurs où vous * devriez * mettre du code Javascript). – Pointy

Répondre

0

Vous avez écrit "sendKey", je le connais seulement comme une méthode de windows-shell. Cela signifie-t-il qu'il suffit de travailler sur MSIE?

Si oui, vous ne pouvez généralement pas accéder au shell pour des raisons de sécurité, mais vous pouvez déclencher un événement. Exemple:

//create event-object 
e = document.createEventObject(); 
//set keycode to 115(for s) 
e.setAttribute('keyCode',115); 
//fire on document 
document.fireEvent('onkeypress',e); 

Pour faire similaire dans d'autres navigateurs, vous trouverez ici un tutoriel: http://www.howtocreate.co.uk/tutorials/javascript/domevents

0

Vous ne pourrez le faire en général. Firefox peut être fait pour simuler complètement certains événements clés avec le comportement du navigateur associé; Les autres navigateurs peuvent déclencher par programmation des événements clés mais n'effectuent pas l'action de navigation habituelle associée à l'événement, comme l'affichage d'un caractère.

0

Cela pourrait être une bonne solution si je vous comprends correctement à la question:

Utilisation de la fonction jQuery animate() pour faire un défilement régulier: J'ai aussi créé un div comme suit:

<div id="scrollToHere"> 
Scroll to here 
</div> 

Vous avez besoin de quelque chose pour exécuter votre script. Créer un bouton comme celui-ci:

Le code jQuery sera comme ceci:

function scrollWin(){ 
$('html, body').animate({ 
scrollTop: $("#scrollToHere").offset().top 
}, 2000); 
} 

ressources:

http://blog.freelancer-id.com/index.php/2009/03/26/scroll-window-smoothly-in-jquery

Vous pouvez faire scroll "boutons" toujours visible!

Bonne chance, je ne sais pas si j'ai compris votre question, s'il vous plaît dites-moi si autrement!

Questions connexes