- From: Markus Ernst <derernst@gmx.ch>
- Date: Mon, 12 Oct 2009 17:09:19 +0200
tali garsiel schrieb: > <Pine.LNX.4.62.0910121145480.25383 at hixie.dreamhostps.com> > Content-Type: text/plain; charset="windows-1255" > Content-Transfer-Encoding: 8bit > MIME-Version: 1.0 > > > I guess it's not a HTML5 question but more a "best practice" question but ... > In case an application has navigation menus that cannot be reloaded each time.Only the content part should be reloaded. > > What is a better > > 1. Using an iframe for the content and fixing bookmarking/back button > 2. Using Ajax to update the content - a "single document application" > > The issue with the later option is not user experience but browser performance. > Is never reloading the document, only updating the DOM harmful? (like caches wont be cleaned , garbage collection will not be done properly) . > > Maybe it's browser specific but it also has to do with what browsers are supposed to support and test. I assume that if you do care about search engines, the Ajax approach will require some amount of extra coding in order to make the content indexable. Anyway, with extra coding you can also match most of Peter's requirements regarding user experience with a single-page solution. I am sure you can pass the state of the navigation tree via query string, and accordingly collapse or expand the nodes when a page is loaded. You can also pass the current scroll position of the page. What may be missing is the possibility to pass the scroll position of the navigation or content, if they are in divs with overflow:scroll. I am not familiar enough with DOM - if they do not yet exist, it might be worth to consider enabling pageYOffset, pageXOffset, scrollBy() and scrollTo() for all element objects that can contain scrollable content rather than for the window object only.
Received on Monday, 12 October 2009 08:09:19 UTC