jQuery导航浏览器地址栏

时间:2016-03-17 13:51:46

标签: php jquery

我有一个网站,使用jQuery加载功能动态加载div容器中的内容。 在浏览器地址行中始终为:http://www.meinedomain.de/#

现在我在浏览器地址栏中会有语义URL。 例如:meinedomain.de/impressum

我是否打开http://www.meinedomain.de/impressum我只看到了impressum.php的内容。标题,导航,页脚等缺失。

$(document).ready(function() {
$(".freizeitparks").click(function() {
        hideMainContent();
        $('#pagecontainer').load('freizeitparks.html');
        $('#contentTitle').html("<strong>Freizeitparks</strong>");
    });

我希望你能帮助我。

祝你好运 帕特里克

1 个答案:

答案 0 :(得分:0)

如果您想更改网址而不重新加载整页,则必须使用HTML5历史记录API。

使用历史记录API,您只能在浏览器历史记录更改且基本网址仍为同一网站时捕获。这意味着当他们使用地址栏打开像http://www.meinedomain.de/impressum这样的网址时,无论你做什么,它都会向网站发送请求。因此,您必须在impressum.php中添加页脚,标题等。

但是因为您可以捕获浏览器历史记录的变化(后退,前进,后退等),您可以使用ajax调用来动态加载数据。使用API​​更改URL并发送ajax调用,而不是重新加载所有内容。在后端你必须制作一个决策树,以便在使用ajax调用时捕获它。 (我的诀窍是,当我使用ajax时,我传递一个get参数,所以我知道什么时候它应该返回整个页面或只返回它的一部分。)

您还可以继续使用哈希方法,但之后必须使用解决方法让searchengines映射您的网站。并且不要忘记在加载时检查哈希值,而不是仅在hashchange上使用。

也许就是这样。