- Dynamic forms that include built-in error checking
- Calculation areas on pages
- User interaction for warnings and getting confirmation
- Dynamically changing background and text colours, or "buttons".
- To look at the URL history and take action based on it.
- Open and control windows.
- Provide different documents or parts thereof based on user request.
Ie. Framed vs not-framed.