Plugin pour faire de la méthode "cliquer" sur le navigateur

J'ai fait ce plugin pour créer la méthode '[0] .click ()' cross-browser, mais je ne peux pas travailler dans Firefox, la version actuelle que j'ai dans Firefox est 3 .6. 16. Les autres navigateurs (Opera / Chrome / Safari / IE) fonctionnent bien.

HTML:

<a href="#" id="myanchor">z</a> <ul> <li id="1">1</li> <li id="2">2</li> <li id="3">3</li> </ul> 

Javascript:

 jQuery.fn.runClick = function () { var element = jQuery(this).get(0); if (jQuery.browser.msie) { // IE element.click(); } else { //var evt = document.createEvent("HTMLEvents"); //evt.initEvent('click', true, true); var evt = element.ownerDocument.createEvent('MouseEvents'); evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); element.dispatchEvent(evt); } return this; }; jQuery(function() { jQuery('li').bind('click', function(event) { var key = jQuery(this).attr('id'); jQuery('#myanchor').attr('href', 'www.mydomaind.com/x/?id=' + key).runClick(); }); }); 

Sur la base de cette question

Merci.

MODIFIER

J'ai étendu un exemple basé sur les commentaires et les réponses

EDIT II

Questions similaires:

How-do-i-programmatically-click-on-a-element-in-firefox
Navigateur-way-to-simulate-anchor-click-with-jquery

Apparemment, cliquer sur un lien dans Firefox ne le déclenche pas:

 jQuery('#myanchor').click(function(){ alert("I was clicked, but I'll do nothing about it"); }); jQuery("li").click(function(){ var key = jQuery(this).attr('id'); jQuery('#myanchor').attr("href", "http://www.mydomaind.com/x/?id=" + key).click(); }); 

Je ne peux pas voir votre grande image afin que vous puissiez avoir une raison valable de le faire. Mais si le but de tout cela est d'aller vers une autre page, faites-le directement:

 jQuery("li").click(function(){ top.location.href = "http://www.mydomaind.com/x/?id=" + this.id; }); 

Les ID de PS ne doivent pas commencer par un chiffre.

Vous utilisez jQuery, mais n'utilisez pas la méthode .click() de jQuery … pourquoi ?

 var $elements = $('some-jquery-selector'); $elements.click(); // that's it.