17. A non-transitory computer-readable medium storing software comprising instructions executable by one or more computers which, upon such execution, cause the one or more computers to perform operations comprising: receiving, by a client device and from a search engine, a first search results page including a first set of search results; after receiving the first search results page by the client device and before receiving an indication of a request from a user to display a second set of search results, providing, by the client device, the first search results page for display; after providing the first search results page for display, requesting, by the client device, a second search results page including the second set of search results; after requesting the second search results page including the second set of search results, receiving, by the client device, the second search results page; pre-caching the received second search results page on the client device; and after receiving the indication of the request, from the user, to display the second set of search results: obtaining the pre-cached second search results page; providing the obtained pre-cached second search result page for display; and before receiving an indication of a request, from the user, to display a third set of search results, and in response to providing the obtained pre-cached second search result page for display, transmitting, by the client device, a confirmation, to the search engine, that the obtained pre-cached second search results page was displayed.
17. A non-transitory computer-readable medium storing software comprising instructions executable by one or more computers which, upon such execution, cause the one or more computers to perform operations comprising: receiving, by a client device and from a search engine, a first search results page including a first set of search results; after receiving the first search results page by the client device and before receiving an indication of a request from a user to display a second set of search results, providing, by the client device, the first search results page for display; after providing the first search results page for display, requesting, by the client device, a second search results page including the second set of search results; after requesting the second search results page including the second set of search results, receiving, by the client device, the second search results page; pre-caching the received second search results page on the client device; and after receiving the indication of the request, from the user, to display the second set of search results: obtaining the pre-cached second search results page; providing the obtained pre-cached second search result page for display; and before receiving an indication of a request, from the user, to display a third set of search results, and in response to providing the obtained pre-cached second search result page for display, transmitting, by the client device, a confirmation, to the search engine, that the obtained pre-cached second search results page was displayed. 18. The medium of claim 17 , the operations further comprising: detecting an occurrence of a pre-defined event; and requesting the second search results in response to the detection of the pre-defined event.