2010-02-17 4 views
6

J'utilise la bibliothèque mshtml pour analyser le code html via MSHTML.HTMLDocument.Attribuer la fonction javascript à un élément dom

ma question: existe-t-il un moyen d'assigner une fonction javascript à un élément dom? j'ai essayé quelque chose comme:

div.onmouseover = "function(){alert('mouseover')}"

et

div.setattribute "onmouseover" , "function(){alert('mouseover')}"

sans succès (pas d'erreur, mais pas d'effet non plus). quelqu'un sait si c'est possible?

thx

Répondre

0

essayer d'utiliser le

<script> 

tag dans votre chaîne

1

Avez-vous essayé de ne pas utiliser les fonctions anonymes? Par exemple au lieu de

div.onmouseover = "function(){alert('mouseover')}" 

Utilisez quelque chose comme

div.onmouseover = "alert('mouseover');" 
0

Essayez ceci:

div.setattribute "onmouseover" , "alert('mouseover');" 
0

Vous définissez la fonction mais pas l'invoquer. Vous devez appeler la fonction en incluant les parenthèses d'invocation. Utilisez

div.setattribute "onmouseover" , "function(){alert('mouseover')}()" 
0
div.onmouseover = function(){alert("mouseover")} 
4

Utilisez toujours une fonction, plutôt que de fixer une chaîne de code dans votre javascript. Vous pouvez le faire en affectant une fonction anonyme. La fonction reçoit un objet événement comme seul argument, qui contient des informations sur l'événement, si vous avez besoin de connaître les positions x/y de l'emplacement de la souris.

div.onmouseover = function(event) { 
    //do stuff 
}; 
0

essayez d'utiliser

button.onclick = new fonction (« someFunctionName (« entrée » + contre + «) »);

au lieu de la fonction() {alert ("mouseover"), cela fonctionnera pour les contrôles créés dynamique

note la différence d'orthographe entre 'fonction' et 'nouvelle fonction'

Questions connexes