h a l f b a k e r yInvented by someone French.
add, search, annotate, link, view, overview, recent, by name, random
news, help, about, links, report a problem
browse anonymously,
or get an account
and write.
register,
|
|
|
dom browsing
only fetch the part of the web page that is 'different' from the one you are on. | |
Say you have website X. It has the same background, navigation, and logo on every page. When you travel from page to page you only fetch the part of the page that is "different" i.e. the nodes on the dom tree that are of different ID's (perhaps) and dynamically insert them into the DOM of the current
page. The effect is very very fast page loads.
(?) XSLT website
http://topos.tobu.free.fr/index.xml [Tobu, Jun 12 2005]
Hijax
http://www.domscrip...com/blog/display/41 Note last post [thumbwax, Dec 20 2006]
[link]
|
|
You could probably hack something up with Javascript (and some server side magic) to make this work, and sell it as a general purpose "site accelerator kit". Heck, simply compressing the repeated HTML elements would do a lot of good. |
|
|
For example, this page right here (your idea plus the annotation box I'm typing into) has 3958 bytes of HTML, of which 719 bytes are actual text content. (And halfbakery is actually really really good in this regard compared to most web sites!) There's potentially a 5X speedup here... and much of the text is actually redundant. |
|
|
Of course, we assume that page display time is dominated by download time, not (e.g.) rendering time. *shrug* |
|
|
I think XSL stylesheets are meant to acheive the same result. |
|
|
Client-side XSL, anyway... but that doesn't work on anything except IE5 (and even there it's an old version of XSL). A Javascript solution, while undoubtedly less elegant, would work today. |
|
|
(I'm a big fan of XSL, don't get me wrong...) |
|
|
Cascading Style Sheets also do the same thing (there the predecessor of XSL stylesheets). However, they run client-side on Netscape 3 or better, and on IE 4 and up (possibly even IE3, God forbid). |
|
|
Will XML or SSI (server-side includes) do the same thing?
Oh, IE3 had CSS support, Netscape 3 did not, for the record. IE3's implementation was really bad though, pretty much the only property that worked was text-decoration. ;-) |
|
|
Server-side anything doesn't do the same thing, obviously. (The whole point here is to save bandwidth.) And "XML" per se doesn't do anything; perhaps you mean something like XSL. (See the earlier annotations.) |
|
|
CSS can help prevent repeated <font> tags and the like, but (in CSS1 anyway) does nothing at all to help repeated content (like the navigation and logo elements mentioned in the original post). |
|
|
How do you know what is different without downloading both pages? |
|
|
I work on a browing library and love this idea, but don't know how to detect a difference. So it seems impracticle. |
|
|
[serious] I think the idea is that the server would know the difference, and would just send the delta information...
I am now worried about your 'browing library' what is one.. and why are you churning though these ideas which are 4 years old ? |
|
|
See my (new, empty) website - link - for an example of client-side XSLT (only tested in mozilla). The main page has just a tag with its name and language, and the xslt stylesheet has the basic structure and tells where to get the header, content... parts. The xslt can be run server-side for browsers that don't support it. |
|
|
Now AJAX is in fashion, that is to say DOM + XmlHttpRequest for fetching data, that can work too. A problem over the declarative approach is the url stays the same when it shouldn't. |
|
| |