【问题标题】:Javascript PHP template systemJavascript PHP模板系统
【发布时间】:2012-12-15 11:19:41
【问题描述】:

我目前拥有的:

  • index.php:主页,显示顶栏、导航和内容占位符

  • 导航:如果单击导航中的链接,则使用 javascript 将 php 文件从 index.php 加载到内容部分;重要:不刷新 index.php

现在工作正常。此外,单击链接时,地址栏中的 url 现在也不会更改。

应该补充什么:

如果点击导航中的链接,javascript 仍应加载 php 文件,但还应更改地址栏中的 url 而无需刷新侧面。

例子:

  • 网址:“www.example.com
  • 点击导航链接中的“work”。
  • work.php 被加载到 index.php 的内容部分
  • 现在的网址:“www.example.com/work

此外,如果用户在地址栏中键入 www.example.com/work,index.php 应该会加载 work.php 而不会点击链接。

Facebook 是一个很好的例子,可以帮助我理解地址栏中 url 的问题。希望我能澄清我的问题,以便有人能够帮助我;-)

【问题讨论】:

    标签: php javascript templates


    【解决方案1】:

    您只能在不刷新页面(发出另一个请求)的情况下更改 URL 的主题标签。 因此,当单击导航链接时,您可以将“www.example.com”更改为“www.example.com/#work”,但如果不重新加载页面,则无法将其更改为“www.example.com/work”。

    可以使用 javascript 使用 window.location.hash 设置主题标签

    window.location.hash = "work";
    

    【讨论】:

      【解决方案2】:

      如果您想避免使用主题标签,可以使用HTML5 history API。这允许您使用history.pushState() 和history.replaceState() 方法在您的页面中拥有/。 还有这个plugin,您可能会觉得有用。

      【讨论】:

        猜你喜欢
        • 2011-06-03
        • 1970-01-01
        • 2011-05-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-21
        • 1970-01-01
        相关资源
        最近更新 更多