【问题标题】:Effective Use of Hashbang, JavaScript, PHP and AJAX With Dynamic Content通过动态内容有效使用 Hashbang、JavaScript、PHP 和 AJAX
【发布时间】:2011-12-18 11:50:05
【问题描述】:

我一直在为我开始开发的桌面应用程序构建一个网页,我真的很想利用 HTML5 技术和 JavaScript 的动态内容。基本上,如果一个人在他们的浏览器中访问“根”页面(index.php,或只是目录名称),信息、关于、常见问题解答和联系表格的部分都将可见(联系表格除外;点击其部分的标题将触发一个 jQuery 动画来显示它)。在页面的左侧,我有一个基本导航,其中包含指向主页、关于、常见问题和联系方式的链接。这些链接的锚点是“#!/home”、“#!/about”、“#!/faq”和“#!/contact”(分别)。当点击其中之一时,JavaScript/jQuery 将隐藏除页眉、页脚和 hashbang 所属部分之外的所有元素(对于联系表单,它还将删除部分标题的点击处理程序,因为它当它是页面的唯一内容时,不需要也不应该被隐藏)。目前我正在使用这个:

window.onload = (function() {
    switch(location.hash) {
    case "#!/contact":
        $("body > *:not(section#contact, nav, header, footer)").hide();
        $("#contact > #labels, #contact > form").slideDown('slow');
    // and similar for the other hashbang URIs
    }

    if (location.hash == "#!/" || location.hash == "#!/home" || !eval(location.hash)) {
        $("a[href='#!/contact']").click(function() {
            $("#contact > #labels, #contact > form").slideDown('slow');
        });
    }
    // similar for the other hashbangs
});

我几乎可以肯定有更好的方法来做到这一点,而且我还想确保此页面及其动态内容可以被 Google 的机器人正确抓取。我应该使用 PHP 来正确执行此操作吗?怎么样?

谢谢!

【问题讨论】:

    标签: php javascript jquery ajax hashbang


    【解决方案1】:

    This Chris Coyier 的 CSS 技巧视频教程介绍了一些最佳实践来实现类似的东西。一个要点是确保您的应用程序无论是否打开 javascript 都能正常工作。

    【讨论】:

      猜你喜欢
      • 2017-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-02
      • 1970-01-01
      • 2014-05-28
      • 2013-05-08
      相关资源
      最近更新 更多