只是一个简单的问题。为什么我/不应该创建一个仅使用javascript加载内容的网站?用户仍然可以链接网站上的特殊内容,因为我使用"#" URL中的标记用于跟踪变量/页面。
答案 0 :(得分:1)
无法访问。如果用户代理不支持JavaScript,则不会加载任何内容。 (搜索引擎索引机器人非常仅限于JS支持)。
它不健全。加载JS时出现微小错误或网络故障give you an outage。
效率低下。加载页面需要加载主页,然后将内容替换为其他页面。 Twitter stopped doing this因为这对用户来说是一次可怕的经历。
history api让我们拥有真正的网址,而不依赖于客户端的诡计。您可以获得问题中描述的方法的好处,同时减轻大多数缺点。
Alice可以转到/foo/
,服务器可以构建/foo/
,页面可以快速加载。然后,她可以点击指向/bar/
的链接,您可以使用pushState
和XMLHttpRequest
来替换网址以及可能会发生变化的网页部分。
Alice向Bob发送链接。 Bob转到/bar/
,服务器可以构建它,页面可以快速加载。等