繁体   English   中英

如何在每个页面的地址栏中保持相同的 url?

[英]How can I keep the same url in the address bar for every page?

我有一个使用 Codeigniter 构建的站点,其中有很多页面和目录。

假设站点名称是www.example.com (这是索引页面)。 如果用户转到另一个页面,例如单击“关于”链接,我怎样才能使所有页面的地址栏中的站点名称不变

这是一个坏主意,如果没有别的原因,它会阻止用户为您的网站添加书签。

但是,有两种方法可以做到这一点,如果你打算朝着这个方向前进(我真的建议你现在就回头,以免为时已晚)。 您可以在 iframe 中加载所有内容:

<!-- your site might look like this then -->
<html>
   <body><iframe src="http://path.to.your.real.site" />
</html>

并且 src 属性将指向其他一些实际上具有所有动态 URL 的 URL。

您的另一个选项是 AJAX。 不过,对于一个例子来说,这真的太长太复杂了。

使用 FRAMESET 或使用 Ajax

<FRAMESET ROWS="100%,*" BORDER=0 FRAMEBORDER=0 FRAMESPACING=0>
     <FRAME NAME="top" SRC="/Login .aspx or .php" NORESIZE>
</FRAMESET>

不确定 codeigniter 但是您可以在普通的 php 中执行此操作,如下所示:

  1. 您的 url 始终映射到单个“外观”php function(甚至可能是“index.php”)。
  2. 在您的页面导航中,您总是从表单中“发布”。 永远不要使用“href=”
  3. 在 FORMs 中,您有几个隐藏字段,用于记录当前和请求的页面。
  4. 当您的 php “外观”运行时,您检查“当前”和“请求”表单字段并调用适当的代码以呈现“请求”页面。

作为替代方案,您可以使用“cookies”而不是隐藏表单字段和一些简单的 javascript 来设置“请求”cookie 的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM