# & #!

Here is my take on the # and #! business.  I'm setting this down to clarify where I
stand and have a concrete position to discuss.

The page you see on the browser is, increasingly, rendered by JavaScript using bits
of resource retrieved from the server.  As the state of the display or the resource (on the client)
changes, the fragment identifier can be used to identify public, reproducible states.
This has the advantage that state/frag-id changes do not cause a page reload.

[Other advantages]
[Managing the address bar]

But it has the disadvantage that client states cannot be crawled and indexed.
To address this Google introduced the #! convention (please take a look at Making Ajax Applications
Crawlable http://code.google.com/web/ajaxcrawling/docs/specification.html) which converts client-side
parameters to servers-side parameters.  AFAIK, to date this only works with Google bots.

[Problems with user-agents that do not support JavaScript].
All the best, Ashok

Received on Thursday, 10 March 2011 16:17:31 UTC