2010-01-04 4 views
2

Comment émuler un événement mousedown en utilisant javascript? Voir , je me suis un lien sur une page smth comme ceci:comment javascript onmousedown événement émulation

<a class="boo" target="_blank" onmousedown="function_rc()" href="http://www.siteaddress.com" tabindex="2"></a> 

et je dois envoyer onmousedown événement de manière programm, après que l'utilisateur fait des actions. pour un exemple que j'ai essayé ceci:

<html> 
<head> 
<script type="text/javascript"> 
function showChar() 
{ 
alert('mouse down'); 
} 
function fake() 
{ 
var evt = document.createEvent('MouseEvents'); 
evt.initMouseEvent ('mousedown', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); 
document.getelementbyid('my_link').dispatchEvent(evt); 
} 
</script> 
</head> 
<body> 
<a id="my_link" onmousedown="showChar()" >LLL</a> 
<div id="alert" onclick="fake()">Click me!</div> 
</body> 
</html> 

si je comprends bien - quand je clique sur div id = fonction « alerte » commencer à travailler, créer un type EVT MouseEvent = mousedown et dispatc cet événement sur un avec id = "my_link". Donc, après l'envoi de evt, la fonction showChar() devrait commencer. mais cela n'arrive pas. qui sait pourquoi et comment résoudre cette situation?

+1

'getelementbyid'? La capitalisation est importante en JavaScript. – bobince

Répondre

1

donc, la disicion était très simple (merci à sberry2A)

$("#my_link").mousedown(); 

si je l'utilise - tout feu comme il se doit =) ps \ peut-être il est simple pour u, mais je préfère asm, et js pour moi - mieux me tuer =)