Of course, this button is only available when you are stopped at a breakpoint.
Lets go through real example step by step.
See all Firebug tips
First, we need to create a breakpoint to break on.
We have created a breakpoint in a JS function that is called when you press a button on the example page. Let's pretend that execution of this function is not that simple and the developer needs to go through a complicated scenario to hit the breakpoint.
Click the button on the example page to hit our breakpoint.
As you can see within the Stack side-panel, there is several function calls on the stack. The bottom/oldest stack is the click event handler that has been executed upon our mouse click.
Since the debugger is sitting at the second
console.log, the Console panel contains just one log.
Now let's imagine the developer wants to perform the execution again. Perhaps another function has been already called and it's necessary to debug that call too. This would require creating another breakpoint higher in the stack and re-execute.
Re-execution: instead of pressing the Continue button and so, be forced to repeate the user scenario again, let's click the Rerun button!
Yes, we are again at the same spot.
The only evidence that we previously stopped the execution at line 28 and re-ran the stack is the Console Panel that clearly shows only the Hello! text - twice, since the other log has never been reached!
Isn't that cool? 🙂
* Firebug 1.7 contains a little bug related to the stack frame list. There are couple more helper frames displayed (used to implement this feature) that should never be visible. Firebug 1.8 fixes it.