- From: Boris Zbarsky <bzbarsky@MIT.EDU>
- Date: Sun, 24 Jun 2012 01:51:36 -0400
- To: public-web-perf@w3.org
The specification currently says (section 5.1): Some user agents maintain the DOM structure of the document in memory during navigation operations such as forward and backward. In those cases, the window.performance.timing and window.performance.navigation objects must not be altered during the navigation. I don't quite understand what this means, and in particular I can't tell whether what Gecko actually does is conformant. On the face of it, this says that if I have page A loaded and then I navigate to page B while saving the DOM of page A, then the window.performance.timing after the navigation must be the same as before the navigation. But if I _don't_ save the DOM of page A, then it can be different. I have a hard time believing this is what was meant. Is the point simply that if I have a page and I save the window.performance.timing for that page in a variable in another Window, navigate away from the page, and then go back in history that the object identity of the resulting window.performance.timing matches what I had before I navigated away? That seems to be a natural consequence in an implementation that saves the Window when it "saves the DOM", but I guess one could do something where the "DOM" is preserved but the Window is not. In that case, "maintain the DOM structure of the document in memory" probably needs to be defined by this specification for this requirement to mean anything. In particular, I doubt that it actually matters that the saving is done "in memory" as opposed to "on disk" or "in the cloud"... -Boris
Received on Sunday, 24 June 2012 05:52:04 UTC