Je ne peux pas tirer des événements personnels en utilisant JavaScript dans IE. Dans Firefox, travaillez grand.
mon code est: p> mais lorsque vous essayez d'exécuter dans Internet Explorer I Obtenir l'erreur: "Arguments invalides" dans la ligne où exécuter document.fireevent ("eveneopersonal", evento); code> dans IE, il ne pas 'T Travailler. Comment puis-je tirer
document.fireevent ("evenuersonal ', evento); code> p> p>
6 Réponses :
Comme je lis la page d'article MSDN pertinente de la méthode CreateEventVeCject, il apparaît comme s'il n'est pas utilisé pour la création d'événements personnalisés - il est utilisé pour la création d'objets personnalisés pouvant être transmis à des événements déjà existants. P>
http://msdn.microsoft.com /en-us/library/ms536390%28vs.85%29.aspx p>
Merci, mais je ne sais pas pourquoi j'oublie "Non", parce que je préférais vraiment "Comment puis-je déclencher des événements personnalisés dans Internet Explorer?"
Vous voudrez peut-être envisager d'utiliser une bibliothèque pour résumer cela. Les deux prototypes d'une jQuery vous géreront pour vous. JQuery est particulièrement bonne pour vous permettre de créer un événement avec un code très simple. p>
La documentation de JQuery est disponible ici: http://docs.jquerery.com/events p>
Oui, mais comment ces cadres mettent en œuvre des noms d'événement personnalisés dans IE?
Je pense que la réponse est - dans IE, c'est-à-dire ne peut pas strong> événements d'incendie qui ne figurent pas sur cette liste: P>
De ce que je peux rassembler, les cadres stockent un registre des noms d'événements "personnalisés" et vous devez utiliser leur spécifique de la mise en œuvre spécifique trigger em> et manipulez les fonctions pour des événements personnalisés. Par exemple, le prototype utilise l'événement OndaVAILABLE code> pour réussir leurs événements personnalisés dans les coulisses. P>
Dean Edward's décrit comment tirer des événements CutSom dans IE
http://dean.edwards.name/weblog/2009/03/callbacks-vs-events/ p>
C'est proche du bas de l'article p>
+1 C'est exactement ce qu'il demande, et même si c'est techniquement une solution de contournement, c'est exactement ce que l'affiche originale demandait. (bonne trouvaille!)
Une bonne réponse, j'étais en train de regarder le prototype pour voir comment ils l'ont fait (voir la réponse ci-dessous), mais c'est un excellent exemple et un article! +50 représentant attribué (quand cela me permet, dit 3 heures ...): D
Juste pour l'enregistrement, document.documentation.fakevents ++; ne fait pas d'événement surpropertychangeur sur iE9, il doit être document.documentablement.setatattribute ("FakeEvent", document.documentablement.fakevents ++);
Ouais faisant référence à @don albrecht, vous pouvez utiliser plus de méthode JQuery AlbrechT () plus sur http: // API. jquery.com/trigger/ p>
dans IE11 Document.Dispatchatevent toujours ne fonctionne toujours pas, mais maintenant AttachEvent est absent également, de sorte que l'autre solution ne fonctionne pas non plus. Cependant, je suis venu avec un encore plus laid. :) Cela implique de remplacer la méthode AddeventListener et se passe comme suit:
var oldEventListener = document.addEventListener; document.addEventListener = function (event, func, capture) { if (event == "MyPreciousCustomEvent") { document.MyPreciousCustomEvent = func; } oldEventListener.call(document, event, func, capture); }; ... $(function () { try { document.MyPreciousCustomEvent("MyPreciousCustomEvent", {}); } catch (e) {} });
Frais. Que voulez-vous dire dans IE "pas de travail"? Avez-vous une erreur? Rien ne se passe-t-il mais aucune erreur?
Merci, mais je ne sais pas pourquoi j'oublie "non", parce que je suis vraiment préféré "Comment puis-je déclencher des événements personnalisés dans Internet Explorer?".