Q:

YUI3: How would I trigger an event?

Suppose I have a click event on a link/button/etc.
var myButton = Y.one('.button');

myButton.on('click', function() {
   // code
});

There is something else happening on the page that I want to trigger a click event on this button.  How would I do this?
I saw YUI3's fire() method, but it looked like that was designed for custom events.  If I am supposed to use fire(), then will myButton.fire('click') work?
(I'm looking for the equivalent of jQuery's .trigger() method, which works on DOM events or custom events.)

A:

If you are looking for equivalent of trigger in yui3 you can try using the 'simulate' 
Y.one('button selector').simulate('click');

For the above statement to work you will need to add "node-event-simulate" roll up in the use method.

A:

Do you really need to trigger the click event on the button? Take the HTML below
    <button id="myButton">Click Me</button>
<br>
    <a href="#">Click Me</a>

You can make use of the custom events to put the real logic somewhere central. 
YUI().use("node","event",function(Y){
    Y.one("#myButton").on("click",function(){Y.fire("custom:doThing")});
    Y.all("a").on("click",function(){Y.fire("custom:doThing")});
    Y.on("custom:doThing",function(){console.log("Do my thing, regardless of event source")})
});

Fiddle: http://jsfiddle.net/WZZmR/

