Yes, there is another way to do this.
The button won't respond to events when it's completely hidden.
Instead of putting the content in a button, put it in a Multi-State Object (MSO) using the Object States panel.
You can then use an invisible button (rectangle with no fill or stroke) on top to trigger the next state of the two-state MSO.
More on creating MSOs: