When a user carries out an action that results in a Visualforce form submission, for example, clicking a button, it can be useful to render a visual indication that the submit is in progress. Without this, a user may click on the button again, or assume there is a problem and navigate away from the page. The standard Visualforce <apex:actionStatus />
component can display messages when starting and stopping a request, but these messages are easily missed, especially if the user is looking at a different part of the page.
In this recipe, we will create a Visualforce page that allows a user to create a case sObject
record utilizing the case standard controller. When the user clicks on the button to create the new record, a spinner GIF will be displayed. In order to ensure that we have the user's full attention, the page will be grayed out while the submit takes place.