url使用自定义数字符号重新加载

时间:2013-03-03 11:38:00

标签: php html url redirect mobile

我们正在建立一个拥有桌面和移动部分的网站

但是我们想为它们使用相同的URL,并且取决于正确的html / css中的用户代理负载

对于我们使用Ember的桌面部分及其路由功能

例如:http://domain.com/#!/newsitems/news-item-1

对于我们的移动部分,我们不希望使用JS进行路由,但手动页面刷新(因此我们的移动网站可以在尽可能多的不同设备上运行)

所以如果我想制作一个重定向到“news-item-1”的按钮

<a href="#!/newsitems/news-item-1">link</a>

不会重新加载我的网页,因为它会识别其编号。 是否有可能刷新页面但仍保留网址。

我们将在php中捕获URL,然后显示正确的html / css

1 个答案:

答案 0 :(得分:1)

URL的“片段”永远不会传递给服务器,它会被浏览器剥离以供自己使用。因此无法在PHP中直接读取它。

相反,你可以做的是相反的:对于非JS情况,HTML应该包含像<a href="/foo">...这样的普通网址。然后JS可以通过添加#来增强它!适当时,动态更改指向<a href="#!/foo">...

的链接

这个一般的想法是,您首先编写简单代码并在顶部编写图层丰富的特征,而不是将它们嵌入到代码中,这被称为“渐进增强”。它可以被视为解决“优雅降级”问题的解决方案,这是您在支持尽可能多的平台时所要实现的目标。